@@ -245,8 +245,7 @@ define([
245
245
type ,
246
246
name ,
247
247
data ,
248
- resetShipping = false ,
249
- resetSelectedBillingAddress = false ;
248
+ resetShipping = false ;
250
249
251
250
if ( ! matchRes ) {
252
251
return ;
@@ -265,7 +264,6 @@ define([
265
264
if ( type === 'billing' && this . shippingAsBilling ) {
266
265
this . syncAddressField ( this . shippingAddressContainer , field . name , field ) ;
267
266
resetShipping = true ;
268
- resetSelectedBillingAddress = true ;
269
267
}
270
268
271
269
if ( type === 'shipping' && ! this . shippingAsBilling ) {
@@ -278,15 +276,16 @@ define([
278
276
279
277
if ( resetShipping ) {
280
278
data [ 'reset_shipping' ] = true ;
281
-
282
- if ( name !== 'customer_address_id' && this . selectAddressEvent === false ) {
283
- this . clearSelected ( 'order-shipping_address_customer_address_id' ) ;
284
- }
285
279
}
286
280
287
- if ( resetSelectedBillingAddress ) {
288
- if ( name !== 'customer_address_id' && this . selectAddressEvent === false ) {
289
- this . clearSelected ( 'order-billing_address_customer_address_id' ) ;
281
+ if ( this . selectAddressEvent === false ) {
282
+ if ( this . shippingAsBilling ) {
283
+ $ ( 'order-shipping_address_customer_address_id' ) . value = '' ;
284
+ }
285
+ // customer_address_id can not be set to blank, if changed to other saved addresses from dropdown list
286
+ // for both billing & shipping while no change made in other address fields
287
+ if ( name !== 'customer_address_id' ) {
288
+ $ ( 'order-' + type + '_address_customer_address_id' ) . value = '' ;
290
289
}
291
290
}
292
291
@@ -296,12 +295,6 @@ define([
296
295
if ( name === 'customer_address_id' ) {
297
296
data [ 'order[' + type + '_address][customer_address_id]' ] =
298
297
$ ( 'order-' + type + '_address_customer_address_id' ) . value ;
299
-
300
- // Clear previously selected shipping address id in order to treat it as new from frontend
301
- // dropdown(Select from existing customer addresses) change event
302
- if ( this . shippingAsBilling ) {
303
- this . clearSelected ( 'order-shipping_address_customer_address_id' ) ;
304
- }
305
298
}
306
299
307
300
if ( name === 'country_id' && this . selectAddressEvent === false ) {
@@ -321,23 +314,6 @@ define([
321
314
}
322
315
} ,
323
316
324
- /**
325
- * Deselect customer address selected value.
326
- *
327
- * @param {String } id - field ID
328
- */
329
- clearSelected : function ( id ) {
330
- var element = $ ( id ) ;
331
- if ( typeof element !== 'undefined' && element !== null ) {
332
- if ( element . value ) {
333
- var elem = element . options ;
334
- for ( var i = 0 ; i < elem . length ; i ++ ) {
335
- elem [ i ] . selected = false ;
336
- }
337
- }
338
- }
339
- } ,
340
-
341
317
/**
342
318
* Set address container form field value.
343
319
*
0 commit comments