Autofill - Nordstroms test case.
[chromium-blink-merge.git] / chrome / test / data / autofill / heuristics / input / 23_checkout_m_nordstroms.com.html
blob6b11d1f73e2bcdc7a9b093433a281e989e45ead1
1 <form data-ng-init="addressType='shippingAddr'" clear-validation-errors="shippingAddress">
2 <div data-ng-hide="multipleAddrMode.value || isPaypalCheckout">
3 <img alt="" data-ng-src="https://secure.nordstromimage.com/images/secure42/globe.png" src="https://secure.nordstromimage.com/images/secure42/globe.png"><h4>Shipping Internationally?</h4> Please <a data-ng-href="http://m.shop.nordstrom.com/c/international-shopping?previousUrl=https://m.secure.nordstrom.com/os" href="http://m.shop.nordstrom.com/c/international-shopping?previousUrl=https://m.secure.nordstrom.com/os">select your shipping destination and currency</a> to continue through our International Checkout.
4 </div>
5 <header data-ng-hide="multipleAddrMode.value" ><h4>Ship to</h4>
6 </header><select clear-local-errors-on-select="" mousedown-memo="" data-ng-show="hasSavedAddress &amp;&amp; mixedShippingAddressOptions.length > 1 &amp;&amp; !multipleAddrMode.value" data-ng-model="selectedOrderLevelShipAddrEntry" clear-form-errors-on-select="shippingAddress" data-ng-change="onOrderLevelShipAddrSelection(selectedOrderLevelShipAddrEntry)" data-ng-options="option.value as option.text for option in mixedShippingAddressOptions" data-ng-init="selectedOrderLevelShipAddrEntry = selectedOrderLevelShipAddrEntry || options[0].value"><option value="" >Select or Add New Address</option><option value="0">+ Add New Address</option></select><!-- ngInclude: --><div class="address ng-scope" data-ng-include="" src="orderTemplates.addressForm.templateId" data-ng-show="!multipleAddrMode.value &amp;&amp; !addressTypes[addressType].isPrivateAddress"><div data-ng-hide="addressTypes[addressType].showAddressForm" class="ng-scope ng-hide">
7 <span >
8 <span >Sheila Ng</span><br><span >
9 340 Main<br data-ng-show="addressTypes[addressType].AddressLine2" >Apt 2
10 </span><br><span >Los Angeles</span>,
11 <abbr title="Washington" >CA</abbr>&nbsp;
12 <span >90291</span><br><span ></span><br><a id="selectItemLevelSavedAddress" class="edit button small ng-hide" href="#" data-ng-click="editExistingAddress($event, addressType)" mousedown-memo="" data-ng-hide="addressTypes[addressType].showAddressForm">Edit</a>
13 </span>
14 </div>
15 <div data-ng-show="addressTypes[addressType].showAddressForm">
16 <!-- Begin: Address Form -->
17 <label >
18 <b>First Name</b>
19 <input type="text" maxlength="16" data-ng-model="addressTypes[addressType].FirstName" focus-me="commonAddressTypeProps[addressType].focusOnFirstName" client-validation="onExit" data-required-on-exit=""><span >Please enter a first name.</span>
20 <span >Please remove any special characters.</span>
21 </label>
22 <label >
23 <b>M.I.</b>
24 <input type="text" maxlength="1" data-ng-model="addressTypes[addressType].MiddleInitial" client-validation="onExit"><span >Please use alphabetic characters only.</span>
25 </label>
26 <label >
27 <b>Last Name</b>
28 <input type="text" maxlength="16" data-ng-model="addressTypes[addressType].LastName" client-validation="onExit" data-required-on-exit="" ><span >Please enter a last name.</span>
29 <span >Please remove any special characters.</span>
30 </label>
31 <label >
32 <b>Address 1</b>
33 <input type="text" placeholder="Street Address or P.O. Box" maxlength="30" data-ng-model="addressTypes[addressType].AddressLine1" focus-me="commonAddressTypeProps[addressType].focusOnLine1" client-validation="onExit" data-required-on-exit="" ><span >Please enter a complete address.</span>
34 <span >Please remove any special characters.</span>
35 </label>
36 <label >
37 <b>Address 2</b> (Optional)
38 <input type="text" placeholder="Company, C/O, Apt, Suite, Unit, Building, Floor" maxlength="30" data-ng-model="addressTypes[addressType].AddressLine2" client-validation="onExit" ><span >Please remove any special characters.</span>
39 </label>
40 <label >
41 <b>City</b>
42 <input type="text" maxlength="30" data-ng-model="addressTypes[addressType].City" client-validation="onExit" data-required-on-exit="" clear-combo-errors-on-blur="commonAddressTypeProps[addressType].CitySelectedStateZipError" ><span >Please enter a city.</span>
43 <span >Please remove any special characters.</span>
44 <span id="shippingAddr-invalid-combo" data-ng-show="commonAddressTypeProps[addressType].CitySelectedStateZipError">This address is invalid. Please double-check the city, state, and ZIP code.</span>
45 </label>
47 <label >
48 <b >State</b>
49 <!-- ngIf: addressType == 'shippingAddr' || addressType == 'billingAddr' --><select data-ng-if="addressType == 'shippingAddr' || addressType == 'billingAddr'" data-ng-model="addressTypes[addressType].selectedState" data-ng-options="state.Name for state in stateListMenu[addressType]" client-validation="onExit" data-required-on-exit="true" options-disabled="state.disabled for state in stateListMenu[addressType]" clear-combo-errors-on-blur="commonAddressTypeProps[addressType].CitySelectedStateZipError" mousedown-memo="" ><option value="" ></option><option value="0">Alabama</option><option value="1">Alaska</option><option value="2">Arizona</option><option value="3">Arkansas</option><option value="4">California</option><option value="5">Colorado</option><option value="6">Connecticut</option><option value="7">Delaware</option><option value="8">District of Columbia</option><option value="9">Florida</option><option value="10">Georgia</option><option value="11">Hawaii</option><option value="12">Idaho</option><option value="13">Illinois</option><option value="14">Indiana</option><option value="15">Iowa</option><option value="16">Kansas</option><option value="17">Kentucky</option><option value="18">Louisiana</option><option value="19">Maine</option><option value="20">Maryland</option><option value="21">Massachusetts</option><option value="22">Michigan</option><option value="23">Minnesota</option><option value="24">Mississippi</option><option value="25">Missouri</option><option value="26">Montana</option><option value="27">Nebraska</option><option value="28">Nevada</option><option value="29">New Hampshire</option><option value="30">New Jersey</option><option value="31">New Mexico</option><option value="32">New York</option><option value="33">North Carolina</option><option value="34">North Dakota</option><option value="35">Ohio</option><option value="36">Oklahoma</option><option value="37">Oregon</option><option value="38">Pennsylvania</option><option value="39">Rhode Island</option><option value="40">South Carolina</option><option value="41">South Dakota</option><option value="42">Tennessee</option><option value="43">Texas</option><option value="44">Utah</option><option value="45">Vermont</option><option value="46">Virginia</option><option value="47">Washington</option><option value="48">West Virginia</option><option value="49">Wisconsin</option><option value="50">Wyoming</option><option value="51" disabled="disabled"></option><option value="52">Armed Forces Americas</option><option value="53">Armed Forces Europe</option><option value="54">Armed Forces Pacific</option><option value="55" disabled="disabled"></option><option value="56">American Samoa</option><option value="57">Guam</option><option value="58">Marianas Islands</option><option value="59">Marshall Islands</option><option value="60">Micronesia</option><option value="61">Palau</option><option value="62">Puerto Rico</option><option value="63">US Virgin Islands</option></select><!-- end ngIf: addressType == 'shippingAddr' || addressType == 'billingAddr' --><!-- ngIf: addressType.indexOf('itemShippingAddr') != -1 --><span class="missing ng-binding">Please select a state.</span>
50 </label>
52 <label >
53 <b >ZIP Code</b>
55 <input type="text" maxlength="10" data-ng-model="addressTypes[addressType].Zip" numeric-keyboard-if-us-zip="" client-validation="onExit" data-required-on-exit="" clear-combo-errors-on-blur="commonAddressTypeProps[addressType].CitySelectedStateZipError" pattern="[0-9]*"><span >Please enter a ZIP code.</span>
56 <span >Please enter a valid ZIP code.</span>
57 </label>
59 <!-- ngIf: addressType == 'billingAddr' -->
60 <!-- ngIf: addressType == 'shippingAddr' || addressType.indexOf('itemShippingAddr') != -1 --><label data-ng-if="addressType == 'shippingAddr' || addressType.indexOf('itemShippingAddr') != -1">
61 <b>Phone</b>
62 <div >
63 <a href="#" popup-toggle="">Information</a>
64 <div >
65 <b>Phone Number for Shipping</b>
66 <p>This phone number will only be used by the shipping carrier if there are questions about delivering your order.</p>
67 <a href="#" >Close</a>
68 </div>
69 </div>
70 <input type="tel" maxlength="14" data-ng-model="addressTypes[addressType].PhoneNumber" client-validation="onExit" data-required-on-exit="" ><span >Please enter a phone number.</span>
71 <span >Please enter a valid phone number.</span>
72 </label><!-- end ngIf: addressType == 'shippingAddr' || addressType.indexOf('itemShippingAddr') != -1 -->
73 </div></div>
74 <!-- ngInclude: --><div data-ng-include="" src="orderTemplates.privateAddress.templateId" data-ng-show="!multipleAddrMode.value &amp;&amp; addressTypes[addressType].isPrivateAddress"><address >
75 <span >
76 <span > <span data-ng-show="privateAddress.MiddleInitial" >.</span> </span><br><span>(Full address is hidden for privacy.)</span><br><span class="locality ng-binding"></span>,
77 <abbr ></abbr>&nbsp;
78 <span ></span><br></span>
79 </address></div>
80 <div data-ng-show="shippingAddrMismatch.value &amp;&amp; !addressTypes[addressType].isPrivateAddress">
81 <h4>Your shipping address no longer matches your billing address.</h4>
82 </div>
83 <label data-ng-hide="multipleAddrMode.value || addressTypes[addressType].isPrivateAddress || isPaypalCheckout">
84 <input type="checkbox" checked="" data-ng-model="addressTypes['shippingAddr'].isSameAsBilling" >
85 Use this as my billing address.
86 </label>
87 <!-- ngInclude: --><div data-ng-include="" src="orderTemplates.shipToMultipleAddr.templateId" data-ng-show="canShipToMultipleDestinations" ><!-- Begin: Ship To Multiple Addresses options -->
88 <div data-ng->
89 <b>Shipping to more than one address?</b>
90 <div >
91 <label>
92 <input type="radio" data-ng-model="selectedMultipleAddrMode.value" data-ng-value="false" name="multiple-address" data-ng-click="toMultipleAddrMode(false)" mousedown-memo="" value="false"><span>No</span>
93 </label>
94 <label>
95 <input type="radio" data-ng-model="selectedMultipleAddrMode.value" data-ng-value="true" name="multiple-address" data-ng-click="toMultipleAddrMode(true)" mousedown-memo="" value="true"><span>Yes</span>
96 </label>
97 </div>
98 </div>
99 <!-- ngIf: multipleAddrMode.value && templates.bag.active.state === 'active' -->
100 <!-- ngIf: multipleAddrMode.value && templates.bag.active.state !== 'active' --></div>
101 <div data-ng-hide="multipleAddrMode.value">
102 <input data-ng-hide="addressTypes[addressType].isPrivateAddress" type="submit" value="Save &amp; Continue" data-ng-click="allFieldsAreValid &amp;&amp; toShippAddInfoState($event, false)" client-validation="onSubmit,shippingAddress" mousedown-memo=""><input data-ng-show="addressTypes[addressType].isPrivateAddress" type="submit" value="Save &amp; Continue" data-ng-click="toShippAddInfoState($event, true)" mousedown-memo="">
103 </div>
104 </form>
106 <form data-contains-subsections="giftCard,note,creditCard" clear-validation-errors="payment">
107 <!-- ngInclude: --><div data-ng-include="" src="orderTemplates.paymentNote.templateId" data-ng-hide="hideNnGcWhenVGCorServiceDown || (showAppliedGCorNnWhenVGCorServiceDown &amp;&amp; !(appliedNordNotes.length > 0))"><header class="ng-scope"><h4>Nordstrom Note</h4>
108 <div >
109 <a href="#" >More Details</a>
110 <div >
111 <b>Nordstrom Notes®</b>
113 Nordstrom Notes are a benefit of Nordstrom Rewards and may be redeemed online, at any of our stores or by calling 1.800.282.6060. <a data-ng-href="http://m.shop.nordstrom.com/c/rewards" target="_blank" href="http://m.shop.nordstrom.com/c/rewards">Learn more</a>
114 </p>
115 <a href="#" >Close</a>
116 </div>
117 </div>
119 <a href="#" data-ng-click="showNordNoteFields($event)" mousedown-memo="" data-ng-hide="showNoteField || (appliedNordNotes.length > 0) || balanceCoveredByTenderCards || systematicNordNotes.length > 0" >Apply a Nordstrom Note</a>
120 </header><p data-ng-show="isTotalCoveredByGiftcards" >
121 No additional payment is required. Your order total is covered by Gift Cards you've applied.
122 </p>
123 <!-- ngIf: systematicNordNotes.length > 0 -->
124 <div data-ng-show="appliedNordNotes.length > 0 || systematicNordNotes.length > 0">
125 <ul>
126 <li>
127 <span >
128 <h4 >Note Number</h4>
129 </span>
130 <span >
131 <h4 >Amount</h4>
132 </span>
133 </li>
134 <!-- ngRepeat: systematicNordNote in systematicNordNotes -->
136 <!-- ngRepeat: appliedNordNote in appliedNordNotes -->
137 </ul>
138 <a href="#" data-ng-click="showNordNoteFields($event)" mousedown-memo="" data-ng-hide="showNoteField || balanceCoveredByTenderCards || showAppliedGCorNnWhenVGCorServiceDown">Apply Another Nordstrom Note</a>
139 </div>
140 <div data-ng-show="showNoteField &amp;&amp; !balanceCoveredByTenderCards &amp;&amp; !showAppliedGCorNnWhenVGCorServiceDown">
141 <label >
142 <b>Note Number</b>
143 <input type="text" maxlength="16" data-ng-model="tenderedCardInfo.nordNoteNumber" restrict-numbers="" client-validation="onExit" data-required-in-nonempty-group="" data-required-on-apply="" data-subsection="note" data-combo-field="" focus-me="focusMeFields.focusOnNordNoteNumber" ><span class="missing">Please enter your Note number.</span>
144 <span >Please enter a valid Note number.</span>
145 <span ></span>
146 <span >Please select Apply if you'd like to use this Note for your order.</span>
147 </label>
148 <label >
149 <b>Access Code</b>
150 <input type="text" maxlength="3" restrict-numbers="" data-ng-model="tenderedCardInfo.nordNoteAccessCode" client-validation="onExit" data-required-in-nonempty-group="" data-required-on-apply="" data-subsection="note" data-combo-field="" ><span class="missing">Please enter the access code.</span>
151 <span >Please enter a valid access code.</span>
152 </label>
153 <input type="button" value="Apply" data-ng-click="!orderSubmitErrors.note.sectionHasErrors &amp;&amp; applyManualNordstromNote($event)" client-validation="onSubmit,note,validateSubsection"><a href="#" class="cancel nord-note-cancel" data-ng-click="hideNordNoteFields($event)" client-validation="onSubmit,note,clearValidationErrors" mousedown-memo="">Cancel</a>
154 </div>
155 <p data-ng-show="!isTotalCoveredByGiftcards &amp;&amp; (appliedNordNotes.length > 0 || showNoteField)" >Please keep your Nordstrom Notes until you've received your order.</p></div>
156 <!-- ngInclude: --><div data-ng-include="" src="orderTemplates.paymentGiftCard.templateId" data-ng-hide="hideNnGcWhenVGCorServiceDown || (showAppliedGCorNnWhenVGCorServiceDown &amp;&amp; !(appliedGiftCards.length > 0))"><header class="ng-scope"><h4>Gift Card</h4>
157 <div >
158 <a href="#" popup-toggle="">Information</a>
159 <div >
160 <b>Gift Cards</b>
162 Gift Cards and e-Gift Cards must have a Gift Card Number and Access Code to be redeemed online.
163 <a data-ng-href="http://m.shop.nordstrom.com/c/gift-card-info" target="_blank" href="http://m.shop.nordstrom.com/c/gift-card-info">Learn more</a>.
164 </p>
165 <a href="#" >Close</a>
166 </div>
167 </div>
168 <a href="#" data-ng-click="showGiftCardFields($event)" data-ng-hide="balanceCoveredByTenderCards|| showGiftCardField || (appliedGiftCards.length > 0)" >Apply a Gift Card</a>
169 </header><p data-ng-show="isTotalCoveredByNotes" >
170 No additional payment is required. Your order total is covered by Nordstrom Notes you've applied.
171 </p>
172 <div data-ng-show="appliedGiftCards">
173 <ul>
174 <li>
175 <span><h4 >Gift Card</h4></span>
176 <span><h4 >Amount</h4></span>
177 </li>
178 <!-- ngRepeat: appliedGiftCard in appliedGiftCards -->
179 </ul>
180 <a href="#" data-ng-click="showGiftCardFields($event)" data-ng-hide="showGiftCardField || balanceCoveredByTenderCards || showAppliedGCorNnWhenVGCorServiceDown">Apply Another Gift Card</a>
181 </div>
182 <div data-ng-show="showGiftCardField &amp;&amp; !balanceCoveredByTenderCards &amp;&amp; !showAppliedGCorNnWhenVGCorServiceDown">
183 <label >
184 <b>Gift Card Number</b>
185 <input type="text" maxlength="16" restrict-numbers="" data-ng-model="tenderedCardInfo.giftCardNumber" client-validation="onExit" data-required-in-nonempty-group="" data-required-on-apply="" data-subsection="giftCard" data-combo-field="" ><span class="missing">Please enter your Gift Card number.</span>
186 <span >Please enter a valid Gift Card number.</span>
187 <span ></span>
188 <span >Please select Apply if you'd like to use this Gift Card for your order.</span>
189 </label>
190 <label >
191 <b>Access Code</b>
192 <input type="text" maxlength="3" restrict-numbers="" data-ng-model="tenderedCardInfo.giftCardAccessCode" client-validation="onExit" data-required-in-nonempty-group="" data-required-on-apply="" data-subsection="giftCard" data-combo-field="" ><span class="missing">Please enter the access code.</span>
193 <span >Please enter a valid access code.</span>
194 </label>
195 <label >
196 <span>Please do not fill out the next field, it is a security measure to insure that this page is being visited by a human.</span>
197 <input type="text" maxlength="3" restrict-numbers="" data-ng-model="tenderedCardInfo.reenterGiftCardAccessCode" ></label>
199 <input type="button" value="Apply" data-ng-click="!orderSubmitErrors.giftCard.sectionHasErrors &amp;&amp; applyGiftCard($event)" client-validation="onSubmit,giftCard,validateSubsection"><a href="#" class="cancel gift-card-cancel" data-ng-click="hideGiftCardFields($event)" client-validation="onSubmit,giftCard,clearValidationErrors">Cancel</a>
200 </div>
201 <p data-ng-show="!isTotalCoveredByNotes &amp;&amp; (appliedGiftCards.length > 0 || showGiftCardField)" >Please keep your Gift Cards until you've received your order.</p></div>
202 <!-- ngInclude: --><div data-ng-include="" src="orderTemplates.paymentPromo.templateId"><header class="ng-scope"><h4>Promotion Code</h4>
203 <a href="#" data-ng-click="showManualPromoFields($event, true)" data-ng-hide="showPromoCodeField || promoCodeApplied" mousedown-memo="" >Apply a Promotion Code</a>
204 <div data-ng-show="showPromoCodeField &amp;&amp; !promoCodeApplied">
205 <div data-ng-hide="isEmployeePromotion.value">
206 <label data-ng-class="addMismatchErrorClass">
207 <b>Enter a Promotion Code</b>
208 <input type="text" data-ng-model="manualPromoCode.value" focus-me="focusMeFields.focusOnManualPromo" on-enter="!orderSubmitErrors.promo.sectionHasErrors &amp;&amp; applyManualPromotion()" data-subsection="promo" client-validation="onKeyPressEnter,promo,validateSubsection" data-required-in-nonempty-group="" data-required-on-apply="" ><span class="missing">Please enter a valid promotion code.</span>
209 <span >Please enter a valid promotion code.</span>
210 <span >You must use a Nordstrom credit or debit card, Gift Card or Nordstrom Note to receive your employee discount.</span>
211 <span >Please select Apply if you'd like to use this promotion code for your order.</span>
212 </label>
213 <div >
214 <input type="button" value="Apply" client-validation="onSubmit,promo,validateSubsection" data-ng-click="!orderSubmitErrors.promo.sectionHasErrors &amp;&amp; applyManualPromotion($event)"><a href="#" data-ng-click="hideManualPromotionField($event)" client-validation="onSubmit,promo,clearValidationErrors">Cancel</a>
215 </div>
216 <div >Only one promo code may be used per order.</div>
217 </div>
218 <div data-ng-show="isEmployeePromotion.value">
219 <div >
220 <label >
221 <b>Employee Number</b>
222 <input type="text" data-ng-model="employeeNumber.value" focus-me="focusMeFields.focusOnEmployeeInput" on-enter="!orderSubmitErrors.employeePromo.sectionHasErrors &amp;&amp; applyEmployeePromotion()" maxlength="10" data-subsection="employeePromo" client-validation="onKeyPressEnter,employeePromo,validateSubsection" data-required-in-nonempty-group="" data-required-on-apply="" pattern="[0-9]*" ><span class="missing">Please enter a valid employee number.</span>
223 <span >Please enter a valid employee number.</span>
224 <span >You must use a Nordstrom credit or debit card, Gift Card or Nordstrom Note to receive your employee discount.</span>
225 <span >Please select Apply if you'd like to use this employee number for your order.</span>
226 </label>
227 <div >
228 <b>Discount</b>
229 <input type="radio" name="discount" data-ng-model="tierDiscount" value="" ><label class="ng-binding">%</label>
230 <input type="radio" name="discount" data-ng-model="tierDiscount" value="" ><label class="ng-binding">%</label>
231 </div>
232 </div>
233 <div >
234 <input type="button" value="Apply" client-validation="onSubmit,employeePromo,validateSubsection" data-ng-click="!orderSubmitErrors.employeePromo.sectionHasErrors &amp;&amp; applyEmployeePromotion($event)"><a href="#" data-ng-click="hideManualPromotionField($event)" client-validation="onSubmit,employeePromo,clearValidationErrors">Cancel</a>
235 </div>
236 <div data-ng-show="isNPGWeek">
237 <b >NPG Employee Discount: to </b>
238 <div>Your discount becomes a House 40 for qualifying NPG merchandise during this special promotion.</div>
239 </div>
240 <div >Online employee purchases are not eligible for commission. Please note, Nordstrom Inc. audits all employee numbers and percentages for security purposes. <a href="http://m.about.nordstrom.com/popup/checkout/co_employeediscount_popup.asp?origin=orderreview" target="_blank">Who is eligible to use the employee discount?</a>
241 </div>
242 </div>
243 </div>
244 </header><span data-ng-show="promoCodeApplied &amp;&amp; !employeePromoCodeApplied">
245 Thanks! Promotion code has been applied, and the discount is reflected in your order total.
246 </span>
247 <span data-ng-show="employeePromoCodeApplied &amp;&amp; !isNPGWeek">
248 Thanks! Your employee discount has been applied, and it's reflected in your order total.
249 </span>
250 <span data-ng-show="employeePromoCodeApplied &amp;&amp; isNPGWeek">
251 Thanks! Your employee discount has been applied. Your discount increases to 40% during this special promotion; it's reflected in your order total.
252 </span>
253 <a data-ng-click="!isEmployeePromotion.value &amp;&amp; removeAppliedManualPromo($event) || isEmployeePromotion.value &amp;&amp; RemoveAppliedEmployeePromo($event)" data-ng-show="promoCodeApplied" clear-invalid-payment-error="">Undo</a></div>
254 <!-- ngIf: isPaypalCheckout -->
255 <!-- ngIf: !isPaypalCheckout || !balanceCoveredByTenderCards --><div data-ng-if="!isPaypalCheckout || !balanceCoveredByTenderCards">
256 <header><h4>CREDIT CARD</h4>
257 <!-- ngIf: isPaypalCheckout -->
258 </header><!-- ngIf: isTotalCoveredByNotesAndGiftCards -->
259 <!-- ngIf: isTotalCoveredByGiftcards -->
260 <!-- ngIf: isTotalCoveredByNotes -->
261 <div data-ng-switch="balanceCoveredByTenderCards || isPaypalCheckout">
263 <!-- ngSwitchWhen: false --><div data-ng-switch-when="false">
265 <select clear-local-errors-on-select="" mousedown-memo="" data-validation-field-selector="label.credit-card-number" client-validation="onExit" data-ng-show="savedCreditCards.length >= 1" data-ng-model="selectedCreditCard.value" data-ng-change="onCreditCardSelection(selectedCreditCard.value)" data-ng-options="option.value as option.text for option in mixedCreditCardOptions" data-ng-init="selectedCreditCard.value = selectedCreditCard.value || options[0].value"><option value="" class="">Select or Add New Card</option></select><!-- ngIf: shopperWallet && shopperWallet.HasBonusPointBenefitsForDisplay --><label class="text-input credit-card-number">
266 <b>Card Number</b>
267 <div >
268 <a href="#" popup-toggle="">Information</a>
269 <div >
270 <b>Cards We Accept</b>
271 <p>Nordstrom Retail, Nordstrom Signature Visa®, Nordstrom Debit, Visa®, MasterCard, Discover, American Express and JCB.</p>
272 <a href="#" >Close</a>
273 </div>
274 </div>
275 <input type="text" maxlength="16" restrict-numbers="" pattern="[0-9]*" data-ng-model="enteredCreditCardInfo.cardNumber" focus-me="focusMeFields.focusOnCreditCardField,noScroll" validate-card="" client-validation="onExit" data-subsection="creditCard"><span class="missing">Please enter your credit card number.</span>
276 <span >Please enter a valid credit card number.</span>
277 <span ></span>
278 <span ></span>
279 <span >You must use a Nordstrom credit or debit card, Gift Card or Nordstrom Note to receive your employee discount.</span>
280 </label>
281 <fieldset data-ng-show="enteredCreditCardInfo.hasExpDate" >
282 <legend>
283 <b>Expiration Date</b>
284 </legend>
285 <select data-ng-model="enteredCreditCardInfo.selectedMonth" data-ng-options="m.Id as m.Name for m in creditMonthList" client-validation="onExit" data-required-on-exit="" data-subsection="creditCard"><option value="" class="">Month</option><option value="0">01 January</option><option value="1">02 February</option><option value="2">03 March</option><option value="3">04 April</option><option value="4">05 May</option><option value="5">06 June</option><option value="6">07 July</option><option value="7">08 August</option><option value="8">09 September</option><option value="9">10 October</option><option value="10">11 November</option><option value="11">12 December</option></select><select class="credit-year ng-pristine ng-valid" data-ng-model="enteredCreditCardInfo.selectedYear" data-ng-options="year for year in creditYearList" client-validation="onExit" data-required-on-exit="" data-subsection="creditCard"><option value="" class="">Year</option><option value="0">2014</option><option value="1">2015</option><option value="2">2016</option><option value="3">2017</option><option value="4">2018</option><option value="5">2019</option><option value="6">2020</option><option value="7">2021</option><option value="8">2022</option><option value="9">2023</option><option value="10">2024</option></select><span class="missing">Please enter the expiration date.</span>
286 <span >The date you selected is in the past. Please try again.</span>
287 </fieldset>
288 <label data-ng-show="enteredCreditCardInfo.hasCCV">
289 <b>Security Code</b>
290 <div >
291 <a href="#" popup-toggle="">Information</a>
292 <div >
293 <strong>Security Code</strong>
294 <div data-ng-show="enteredCreditCardInfo.cardType == 'AX'" >
295 <div ></div>
296 <p>On American Express cards, the security code is the four-digit code on the front of the card.</p>
297 </div>
298 <div data-ng-show="enteredCreditCardInfo.cardType == 'DC'" >
299 <div ></div>
300 <p>On Discover cards, the security code is the three-digit code on the back of the card.</p>
301 </div>
302 <div data-ng-show="enteredCreditCardInfo.cardType == 'MC'" >
303 <div ></div>
304 <p>On MasterCards, the security code is the three-digit code on the back of the card.</p>
305 </div>
306 <div data-ng-show="enteredCreditCardInfo.cardType == 'VI' || enteredCreditCardInfo.cardType == 'NV'" >
307 <div ></div>
308 <p>On Visa cards, the security code is the three-digit code on the back of the card.</p>
309 </div>
310 <div data-ng-show="enteredCreditCardInfo.cardType == 'JC'" >
311 <div ></div>
312 <p>On JCB cards, the security code is the three-digit code on the back of the card.</p>
313 </div>
314 <a href="#" >Close</a>
315 </div>
316 </div>
318 <input id="credit-ccv" type="text" maxlength="0" data-ng-model="enteredCreditCardInfo.securityCode" focus-me="focusMeFields.focusOnCCVField,noScroll" client-validation="onExit" restrict-numbers="" data-required-on-exit="" data-subsection="creditCard" pattern="[0-9]*" ><span class="missing">Please enter the security code.</span>
319 <span >Please enter a valid 0-digit code.</span>
320 </label>
321 <label data-ng-show="isAuthenticatedShopper &amp;&amp; enteredCreditCardInfo.cardIsRecognized &amp;&amp; !hasCreditCardsInWallet">
322 <input type="checkbox" data-ng-model="enteredCreditCardInfo.saveCreditCardInfo" >
323 Yes, I would like to save my credit card information.
324 </label>
325 <span >
326 Your information is secure.
327 <div >
328 <a href="#" popup-toggle="">Information</a>
329 <div >
330 <b>Secure Shopping</b>
331 <p>We use Transport Layer Security (TLS) to encrypt your credit card number, name and address, so only Nordstrom.com is able to decode your information.</p>
332 <a href="#" >Close</a>
333 </div>
334 </div>
335 </span>
336 </div>
339 </div>
340 </div><!-- end ngIf: !isPaypalCheckout || !balanceCoveredByTenderCards -->
341 <!-- ngIf: (!balanceCoveredByTenderCards || (balanceCoveredByTenderCards && hasOnlyNonShippableItems && !hasSavedAddress) || (balanceCoveredByTenderCards && hasSavedAddress && allAddressesArePrivate)) && !isPaypalCheckout --><div data-ng-if="(!balanceCoveredByTenderCards || (balanceCoveredByTenderCards &amp;&amp; hasOnlyNonShippableItems &amp;&amp; !hasSavedAddress) || (balanceCoveredByTenderCards &amp;&amp; hasSavedAddress &amp;&amp; allAddressesArePrivate)) &amp;&amp; !isPaypalCheckout">
342 <header><h4>BILL TO</h4>
343 </header><select clear-local-errors-on-select="" mousedown-memo="" data-ng-show="hasSavedAddress &amp;&amp; mixedBillingAddressOptions.length > 1" data-ng-model="selectedOrderLevelBillAddrEntry.value" clear-form-errors-on-select="payment" data-ng-change="onOrderLevelBillAddrSelection(selectedOrderLevelBillAddrEntry.value)" data-ng-options="option.value as option.text for option in mixedBillingAddressOptions" data-ng-init="selectedOrderLevelBillAddrEntry.value = selectedOrderLevelBillAddrEntry.value || options[0].value"><option value="" class="">Select or Add New Address</option><option value="0">Sheila Ng, 340 MAIN ST VENICE, CA 90291-2524</option><option value="1">+ Add New Address</option></select><!-- ngInclude: --><div class="address ng-scope" data-ng-include="" src="orderTemplates.addressForm.templateId" data-ng-init="addressType='billingAddr'"><div data-ng-hide="addressTypes[addressType].showAddressForm" class="ng-scope">
344 <span >
345 <span >Sheila Ng</span><br><span class="street-address ng-binding">
346 340 MAIN ST<br data-ng-show="addressTypes[addressType].AddressLine2" >
347 </span><br><span >VENICE</span>,
348 <abbr title="Washington" >CA</abbr>&nbsp;
349 <span >90291-2524</span><br><span class="phone-number ng-binding">(310) 555-1232</span><br><a id="selectItemLevelSavedAddress" class="edit button small" href="#" data-ng-click="editExistingAddress($event, addressType)" mousedown-memo="" data-ng-hide="addressTypes[addressType].showAddressForm">Edit</a>
350 </span>
351 </div>
352 <div data-ng-show="addressTypes[addressType].showAddressForm">
353 <!-- Begin: Address Form -->
354 <label >
355 <b>First Name</b>
356 <input type="text" maxlength="16" data-ng-model="addressTypes[addressType].FirstName" focus-me="commonAddressTypeProps[addressType].focusOnFirstName" client-validation="onExit" data-required-on-exit=""><span class="missing">Please enter a first name.</span>
357 <span >Please remove any special characters.</span>
358 </label>
359 <label >
360 <b>M.I.</b>
361 <input type="text" maxlength="1" data-ng-model="addressTypes[addressType].MiddleInitial" client-validation="onExit"><span class="invalid">Please use alphabetic characters only.</span>
362 </label>
363 <label >
364 <b>Last Name</b>
365 <input type="text" maxlength="16" data-ng-model="addressTypes[addressType].LastName" client-validation="onExit" data-required-on-exit="" ><span class="missing">Please enter a last name.</span>
366 <span >Please remove any special characters.</span>
367 </label>
368 <label >
369 <b>Address 1</b>
370 <input type="text" placeholder="Street Address or P.O. Box" maxlength="30" data-ng-model="addressTypes[addressType].AddressLine1" focus-me="commonAddressTypeProps[addressType].focusOnLine1" client-validation="onExit" data-required-on-exit="" ><span class="missing">Please enter a complete address.</span>
371 <span >Please remove any special characters.</span>
372 </label>
373 <label >
374 <b>Address 2</b> (Optional)
375 <input type="text" placeholder="Company, C/O, Apt, Suite, Unit, Building, Floor" maxlength="30" data-ng-model="addressTypes[addressType].AddressLine2" client-validation="onExit" ><span class="invalid">Please remove any special characters.</span>
376 </label>
377 <label >
378 <b>City</b>
379 <input type="text" maxlength="30" data-ng-model="addressTypes[addressType].City" client-validation="onExit" data-required-on-exit="" clear-combo-errors-on-blur="commonAddressTypeProps[addressType].CitySelectedStateZipError" ><span class="missing">Please enter a city.</span>
380 <span >Please remove any special characters.</span>
381 <span id="billingAddr-invalid-combo" data-ng-show="commonAddressTypeProps[addressType].CitySelectedStateZipError">This address is invalid. Please double-check the city, state, and ZIP code.</span>
382 </label>
384 <label >
385 <b >State/Province</b>
386 <!-- ngIf: addressType == 'shippingAddr' || addressType == 'billingAddr' --><select data-ng-if="addressType == 'shippingAddr' || addressType == 'billingAddr'" data-ng-model="addressTypes[addressType].selectedState" data-ng-options="state.Name for state in stateListMenu[addressType]" client-validation="onExit" data-required-on-exit="true" options-disabled="state.disabled for state in stateListMenu[addressType]" clear-combo-errors-on-blur="commonAddressTypeProps[addressType].CitySelectedStateZipError" mousedown-memo="" ><option value="" class=""></option><option value="0">Alabama</option><option value="1">Alaska</option><option value="2">Arizona</option><option value="3">Arkansas</option><option value="4">California</option><option value="5">Colorado</option><option value="6">Connecticut</option><option value="7">Delaware</option><option value="8">District of Columbia</option><option value="9">Florida</option><option value="10">Georgia</option><option value="11">Hawaii</option><option value="12">Idaho</option><option value="13">Illinois</option><option value="14">Indiana</option><option value="15">Iowa</option><option value="16">Kansas</option><option value="17">Kentucky</option><option value="18">Louisiana</option><option value="19">Maine</option><option value="20">Maryland</option><option value="21">Massachusetts</option><option value="22">Michigan</option><option value="23">Minnesota</option><option value="24">Mississippi</option><option value="25">Missouri</option><option value="26">Montana</option><option value="27">Nebraska</option><option value="28">Nevada</option><option value="29">New Hampshire</option><option value="30">New Jersey</option><option value="31">New Mexico</option><option value="32">New York</option><option value="33">North Carolina</option><option value="34">North Dakota</option><option value="35">Ohio</option><option value="36">Oklahoma</option><option value="37">Oregon</option><option value="38">Pennsylvania</option><option value="39">Rhode Island</option><option value="40">South Carolina</option><option value="41">South Dakota</option><option value="42">Tennessee</option><option value="43">Texas</option><option value="44">Utah</option><option value="45">Vermont</option><option value="46">Virginia</option><option value="47">Washington</option><option value="48">West Virginia</option><option value="49">Wisconsin</option><option value="50">Wyoming</option><option value="51" disabled="disabled"></option><option value="52">Armed Forces Americas</option><option value="53">Armed Forces Europe</option><option value="54">Armed Forces Pacific</option><option value="55" disabled="disabled"></option><option value="56">American Samoa</option><option value="57">Guam</option><option value="58">Marianas Islands</option><option value="59">Marshall Islands</option><option value="60">Micronesia</option><option value="61">Palau</option><option value="62">Puerto Rico</option><option value="63">US Virgin Islands</option><option value="64" disabled="disabled"></option><option value="65">Alberta</option><option value="66">British Columbia</option><option value="67">Manitoba</option><option value="68">New Brunswick</option><option value="69">Newfoundland</option><option value="70">Northwest Territories</option><option value="71">Nova Scotia</option><option value="72">Nunavut</option><option value="73">Ontario</option><option value="74">Prince Edward Island</option><option value="75">Quebec</option><option value="76">Saskatchewan</option><option value="77">Yukon</option></select><!-- end ngIf: addressType == 'shippingAddr' || addressType == 'billingAddr' --><!-- ngIf: addressType.indexOf('itemShippingAddr') != -1 --><span class="missing ng-binding">Please select a state/province.</span>
387 </label>
389 <label >
390 <b >ZIP/Postal Code</b>
392 <input type="text" maxlength="10" data-ng-model="addressTypes[addressType].Zip" numeric-keyboard-if-us-zip="" client-validation="onExit" data-required-on-exit="" clear-combo-errors-on-blur="commonAddressTypeProps[addressType].CitySelectedStateZipError" pattern="[0-9]*"><span class="missing">Please enter a ZIP code.</span>
393 <span >Please enter a valid ZIP code.</span>
394 </label>
396 <!-- ngIf: addressType == 'billingAddr' --><label data-ng-if="addressType == 'billingAddr'">
397 <b>Country</b>
398 <select data-ng-model="addressTypes[addressType].selectedCountry" data-ng-options="country.Name for country in countryList" data-ng-change="onCountryChange(addressTypes[addressType].selectedCountry.Id)" client-validation="onExit" data-required-on-exit=""><option value="0" selected="selected">Afghanistan</option><option value="1">Albania</option><option value="2">Algeria</option><option value="3">American Samoa</option><option value="4">Andorra</option><option value="5">Angola</option><option value="6">Anguilla</option><option value="7">Antigua And Barbuda</option><option value="8">Argentina</option><option value="9">Aruba</option><option value="10">Australia</option><option value="11">Austria</option><option value="12">Bahamas</option><option value="13">Bahrain</option><option value="14">Bangladesh</option><option value="15">Barbados</option><option value="16">Belgium</option><option value="17">Belize</option><option value="18">Benin</option><option value="19">Bermuda</option><option value="20">Bhutan</option><option value="21">Bolivia</option><option value="22">Botswana</option><option value="23">Brazil</option><option value="24">Brunei Darussalam</option><option value="25">Bulgaria</option><option value="26">Burkina Faso</option><option value="27">Burundi</option><option value="28">Cambodia</option><option value="29">Cameroon</option><option value="30">Canada</option><option value="31">Cape Verde</option><option value="32">Cayman Is.</option><option value="33">Central African Republic</option><option value="34">Chad</option><option value="35">Chile</option><option value="36">China</option><option value="37">Colombia</option><option value="38">Comoros</option><option value="39">Cook Is.</option><option value="40">Costa Rica</option><option value="41">Croatia</option><option value="42">Cyprus</option><option value="43">Czech Republic</option><option value="44">Denmark</option><option value="45">Djibouti</option><option value="46">Dominica</option><option value="47">Dominican Republic</option><option value="48">East Timor</option><option value="49">Ecuador</option><option value="50">Egypt</option><option value="51">El Salvador</option><option value="52">Equatorial Guinea</option><option value="53">Eritrea</option><option value="54">Estonia</option><option value="55">Ethiopia</option><option value="56">Falkland Is.</option><option value="57">Faroe Is.</option><option value="58">Fiji</option><option value="59">Finland</option><option value="60">France</option><option value="61">French Guiana</option><option value="62">French Polynesia</option><option value="63">Gabon</option><option value="64">Gambia</option><option value="65">Georgia</option><option value="66">Germany</option><option value="67">Gibraltar</option><option value="68">Greece</option><option value="69">Greenland</option><option value="70">Grenada</option><option value="71">Guadeloupe</option><option value="72">Guam</option><option value="73">Guatemala</option><option value="74">Guinea</option><option value="75">Guinea-Bissau</option><option value="76">Guyana</option><option value="77">Haiti</option><option value="78">Honduras</option><option value="79">Hong Kong</option><option value="80">Hungary</option><option value="81">Iceland</option><option value="82">India</option><option value="83">Indonesia</option><option value="84">Ireland</option><option value="85">Israel</option><option value="86">Italy</option><option value="87">Jamaica</option><option value="88">Japan</option><option value="89">Jordan</option><option value="90">Kazakhstan</option><option value="91">Kenya</option><option value="92">Kiribati</option><option value="93">Korea (South)</option><option value="94">Kuwait</option><option value="95">Kyrgyzstan</option><option value="96">Laos</option><option value="97">Latvia</option><option value="98">Lebanon</option><option value="99">Lesotho</option><option value="100">Libya</option><option value="101">Liechtenstein</option><option value="102">Lithuania</option><option value="103">Luxembourg</option><option value="104">Macau</option><option value="105">Macedonia</option><option value="106">Madagascar</option><option value="107">Malawi</option><option value="108">Malaysia</option><option value="109">Maldives</option><option value="110">Mali</option><option value="111">Malta</option><option value="112">Martinique</option><option value="113">Mauritania</option><option value="114">Mauritius</option><option value="115">Mexico</option><option value="116">Micronesia</option><option value="117">Moldova, Republic of</option><option value="118">Monaco</option><option value="119">Mongolia</option><option value="120">Montserrat</option><option value="121">Morocco</option><option value="122">Mozambique</option><option value="123">Namibia</option><option value="124">Nauru</option><option value="125">Nepal</option><option value="126">Netherlands</option><option value="127">Netherlands Antilles</option><option value="128">New Caledonia</option><option value="129">New Zealand</option><option value="130">Nicaragua</option><option value="131">Niger</option><option value="132">Norfolk Island</option><option value="133">Northern Ireland</option><option value="134">Northern Mariana Is.</option><option value="135">Norway</option><option value="136">Oman</option><option value="137">Pakistan</option><option value="138">Palau</option><option value="139">Panama</option><option value="140">Papua New Guinea</option><option value="141">Paraguay</option><option value="142">Peru</option><option value="143">Philippines</option><option value="144">Pitcairn</option><option value="145">Poland</option><option value="146">Portugal</option><option value="147">Puerto Rico</option><option value="148">Qatar</option><option value="149">Reunion</option><option value="150">Romania</option><option value="151">Russia</option><option value="152">Rwanda</option><option value="153">Saint Kitts and Nevis</option><option value="154">Saint Lucia</option><option value="155">Saint Vincent &amp; Grenadines</option><option value="156">Samoa (Independent)</option><option value="157">Sao Tome and Principe</option><option value="158">Saudi Arabia</option><option value="159">Senegal</option><option value="160">Seychelles</option><option value="161">Sierra Leone</option><option value="162">Singapore</option><option value="163">Slovakia</option><option value="164">Slovenia</option><option value="165">Solomon Is.</option><option value="166">Somalia Southern Reg</option><option value="167">South Africa</option><option value="168">South Korea</option><option value="169">Spain</option><option value="170">Sri Lanka</option><option value="171">St. Helena</option><option value="172">St. Pierre and Miquelon</option><option value="173">Suriname</option><option value="174">Swaziland</option><option value="175">Sweden</option><option value="176">Switzerland</option><option value="177">Taiwan</option><option value="178">Tajikistan</option><option value="179">Tanzania</option><option value="180">Thailand</option><option value="181">Togo</option><option value="182">Tonga</option><option value="183">Trinidad</option><option value="184">Tunisia</option><option value="185">Turkey</option><option value="186">Turks and Caicos Is.</option><option value="187">Tuvalu</option><option value="188">Uganda</option><option value="189">Ukraine</option><option value="190">United Arab Emirates</option><option value="191">United Kingdom</option><option value="192">Uruguay</option><option value="193">United States</option><option value="194">Uzbekistan</option><option value="195">Vanuatu</option><option value="196">Venezuela</option><option value="197">Viet Nam</option><option value="198">Virgin Is. (British)</option><option value="199">Virgin Is. (U.S.)</option><option value="200">Yemen Arab Rep</option><option value="201">Yugoslavia</option><option value="202">Zambia</option><option value="203">Serbia</option><option value="204">Azerbaijan</option><option value="205">Montenegro</option></select><span class="missing">Please enter a country.</span>
399 </label><!-- end ngIf: addressType == 'billingAddr' -->
400 <!-- ngIf: addressType == 'shippingAddr' || addressType.indexOf('itemShippingAddr') != -1 -->
401 </div></div>
402 <div data-ng-show="billingAddrMismatch"><h4>Your billing address no longer matches your shipping address.</h4></div>
403 <p>Your billing address should match the address on your credit card statement.</p>
404 </div><!-- end ngIf: (!balanceCoveredByTenderCards || (balanceCoveredByTenderCards && hasOnlyNonShippableItems && !hasSavedAddress) || (balanceCoveredByTenderCards && hasSavedAddress && allAddressesArePrivate)) && !isPaypalCheckout -->
405 <div >
406 <!-- Begin: Contact Details -->
407 <header><h4>CONTACT DETAILS</h4>
408 </header><div >
409 <p>We'll send any order correspondence e-mails to the address below, and give you a call if anything comes up.</p>
410 <label >
411 <b>E-mail</b>
412 <div >
413 <a href="#" popup-toggle="">Information</a>
414 <div >
415 <b>Order Confirmation E-mail</b>
416 <p>This e-mail address will only be used by Nordstrom if we have questions about your order.</p>
417 <a href="#" >Close</a>
418 </div>
419 </div>
420 <a href="#" data-ng-hide="contactInfo.userEmailAddress &amp;&amp; isAuthenticatedShopper">Information</a>
421 <input type="text" maxlength="47" data-ng-model="contactInfo.userEmailAddress" client-validation="onExit" data-required-on-exit="" data-ng-hide="contactInfo.userEmailAddress &amp;&amp; isAuthenticatedShopper" ><span class="missing" data-ng-hide="contactInfo.userEmailAddress &amp;&amp; isAuthenticatedShopper">Please enter your e-mail.</span>
422 <span data-ng-hide="contactInfo.userEmailAddress &amp;&amp; isAuthenticatedShopper">Please enter a valid e-mail address.</span>
423 </label>
424 <p data-ng-show="contactInfo.userEmailAddress &amp;&amp; isAuthenticatedShopper"></p>
425 <label >
426 <b>Phone</b>
427 <div >
428 <a href="#" popup-toggle="">Information</a>
429 <div >
430 <b>Phone Number for This Order</b>
431 <p>This phone number will only be used by Nordstrom if we have questions about your order.</p>
432 <a href="#" >Close</a>
433 </div>
434 </div>
435 <a href="#">Information</a>
436 <input type="text" maxlength="14" data-ng-model="contactInfo.userPhoneNumber" client-validation="onExit" data-required-on-exit="" ><span class="missing">Please enter a phone number.</span>
437 <span >Please enter a valid phone number.</span>
438 </label>
439 <label data-ng-hide="hasSubscribedForProductAlerts &amp;&amp; isAuthenticatedShopper">
440 <input type="checkbox" mousedown-memo="" data-ng-model="subscribeForEmailUpdates.value" data-ng-change="subscribeForEmailUpdates.value" ><b>Yes!</b> Send me e-mail updates about the latest trends, products and promotions online and in store.
441 </label>
442 </div>
443 <div >
444 <input type="button" value="Save &amp; Continue" mousedown-memo="" data-ng-click="refreshPaymentServerErrors('all') || (allFieldsAreValid &amp;&amp; toPaymentInfoState($event))" client-validation="onSubmit, payment"><span class="action-message">You can review this order before it's final.</span>
445 </div>
446 </div>
447 </form>