Chcę dołączyć i usunąć przez Optgroup Jestem w stanie usunąć to, używając poniżej kodu JS, ale nie jest w stanie dołączyć optgroup, możesz sprawdzić moje skrzypce JS

Kod JS

$j("#shipping_method optgroup[label='Free Shipping']").remove();

<fieldset>
   <select name="shipping_method" id="shipping_method" style="width:250px;" class="required-entry">
      <option value="">Please select a shipping method...</option>
      <optgroup label="Free Shipping" style="font-style:normal;">
         <option value="freeshipping_freeshipping">
            Standard Shipping (SmartPost) (2 - 7 Business Days) - $0.00                                                    
         </option>
      </optgroup>
      <optgroup label="FedEx" style="font-style:normal;">
         <option value="fedex_FEDEX_GROUND">
            Ground (2 - 4 Business Days) - $18.07                                                    
         </option>
         <option value="fedex_FEDEX_2_DAY">
            2-day (2 - 3 Business Days) - $30.62                                                    
         </option>
         <option value="fedex_STANDARD_OVERNIGHT">
            Standard Overnight (1 - 2 Business Days) - $81.34                                                    
         </option>
      </optgroup>
   </select>
</fieldset>
<a href="#" class="reset-signature" style="display: none">Clear Shipping Selection</a>
<p class="actions">
   <button id="update_shipping_method_submit" type="submit" class="button" style="display: none;"><span><span>Update Shipping Method</span></span></button>
</p>

https://jsfiddle.net/7k6evkt8/
1
Brad Hodge 6 wrzesień 2017, 10:45

2 odpowiedzi

Najlepsza odpowiedź

Spróbuj poniższy przykład, najpierw wykonaj klon poza wybraną, a następnie wyjmij opcję i po otrzymaniu opcji dołącza zewnętrzną klon

 $("#shipping_method optgroup[label='Free Shipping']").clone("optgroup[label='Free Shipping']").insertAfter("#shipping_method_form");
    $("#shipping_method optgroup[label='Free Shipping']").remove();
    $(".box-content .fedex").appendTo("#shipping_method");

Mam nadzieję że to pomoże !!!

1
magento12345 7 wrzesień 2017, 06:18

Możesz spróbować tego:

$("#shipping_method optgroup[label='Free Shipping']").remove();
var optgroup = $('<optgroup>');
optgroup.attr('label', 'testing');
var option = $("<option></option>");
option.val('aaaa');
option.text('aaaa');
optgroup.append(option);

$("#shipping_method").append(optgroup);
0
vicnoob 6 wrzesień 2017, 08:05