2013-08-07 2 views
1

У меня есть форма, которая сгенерирована и отправлена ​​обратно mvc и бритвой, как бы удалить удаленные формы из формы? например. есть два флажка с виноградом и один с бананами, я бы хотел удалить дублированный виноград. Я мог бы поместить $ ('. Fruit') в массив, но как бы настроить таргетинг на дубликаты?удаление дубликатов флажков из формы

<div class="fruit"> 
     <input data-val="true" data-val-number="" data-val-required="" name=" [5].UniqueValue[3].Id" type="hidden" value="123"> 
     <input name="[5].UniqueValue[3].fruit" type="hidden" value=".grapes"> 
     <input data-val="" data-val-required="" name="[5].UniqueValue[3].IsSelected" type="checkbox" value="true"><input name="[5].UniqueValue[3].IsSelected" type="hidden" value="false"> grapes 
</div> 
<div class="fruit"> 
     <input data-val="true" data-val-number="" data-val-required="" name="[5].UniqueValue[2].Id" type="hidden" value="321"> 
     <input name="[5].UniqueValue[2].fruit" type="hidden" value=".bananas"> 
     <input data-val="" data-val-required="" name="[5].UniqueValue[2].IsSelected" type="checkbox" value="true"><input name="[5].UniqueValue[2].IsSelected" type="hidden" value="false"> bananas 
</div> 
<div class="fruit"> 
     <input data-val="true" data-val-number="" data-val-required="" name="[5].UniqueValue[1].Id" type="hidden" value="456"> 
     <input name="[5].UniqueValue[1].fruit" type="hidden" value=".grapes"> 
     <input data-val="" data-val-required="" name="[5].UniqueValue[1].IsSelected" type="checkbox" value="true"><input name="[5].UniqueValue[1].IsSelected" type="hidden" value="false"> grapes 
</div> 

ответ

2

Вы можете использовать :gt() и :has() селекторы.

FIDDLE

$('.fruit > [name$=fruit]').each(function() { 
    $('.fruit:has([value="' + $(this).prop('value') + '"]):gt(0)').remove(); 
}); 
+0

@archytect Исправлено, я изменил 'значение = val' для' значение = "VAL" ', его более безопасным. – plalx

+2

узнал намного больше, чем просто исправить проблему, спасибо. – archytect

+0

@archytect Я рад это слышать! – plalx

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