2016-07-12 1 views
0

Я пытаюсь написать код, чтобы скрыть <option>, если его значение равно значению первого (которое является динамическим и получено с помощью php) Это код :Скрыть опцию, если ее значение равно другой опции

<select onChange="this.form.submit()" name="cart[<?php echo $_item->getId() ?>][qty]" class="input-text qty qtySelect" > 
    <option value="<?php echo $this->getQty() ?>" name="cart[<?php echo $_item->getId() ?>][qty]" class="input-text qty qtySelected" ><?php echo $this->getQty() ?></option> 
    <option value="1" name="cart[<?php echo $_item->getId() ?>][qty]" data-qty="1" class="input-text qty notSelected" label="1" ><span>1</span></option> 
    <option value="2" name="cart[<?php echo $_item->getId() ?>][qty]" data-qty="2" class="input-text qty notSelected" label="2" >2</option> 
    <option value="3" name="cart[<?php echo $_item->getId() ?>][qty]" data-qty="3" class="input-text qty notSelected" label="3">3</option> 
</select> 

Я попытался сделать это следующим образом:

$j('.qtySelect').change(function(){ 
    if(('.qtySelected').val() == ('.notSelected').val()) 
    { 
     $j('.notSelected').hide(); 
    } 
}); 

Но это не сработало. Есть идеи, как это можно достичь?

+1

'если (('qtySelected ') Вал() == (' .notSelected') вал()) 'должно быть' if ($ j ('. qtySelected'). val() == $ j ('. notSelected'). val()) ' –

+0

Просто используйте' $ j ('. notSelected [значение = '+ this.value +'] '). hide(); 'in' change-handler' – Rayon

+1

Вот тент http://stackoverflow.com/questions/23729456/how-to-remove-duplicate-dropdown-option -elements-with-same-value # answer-23729617 – miguelmpn

ответ

0

Он скроет все варианты, которые дублируются, попробуйте:..

$(".qtySelect option").each(function(){ 
 
    $(this).siblings("[value='"+ this.value+"']").hide(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
 
<select name="cart[0][qty]" class="input-text qty qtySelect" > 
 
    <option value="1" name="cart[1[qty]" class="input-text qty qtySelected" >1</option> 
 
    <option value="1" name="cart[1][qty]" data-qty="1" class="input-text qty notSelected" label="1" ><span>1</span></option> 
 
    <option value="2" name="cart[3[qty]" data-qty="2" class="input-text qty notSelected" label="2" >2</option> 
 
    <option value="3" name="cart[4][qty]" data-qty="3" class="input-text qty notSelected" label="3">3</option> 
 
</select>

+0

Работал для меня, спасибо – MariaL

+0

@MariaL приветствуется :) –

Смежные вопросы