验证选择选项 - 不能选择重复选择选项两次

时间:2015-03-30 04:30:44

标签: javascript

我有这个选择输入。它将被多次放入表格中,因为它们每个都有数量。 因此,选择输入将再次显示,但我希望它限制已选择的选项。不一定要隐藏所选输入,而是在用户选择已在表单中的选项时提示警报。

<select class="form-control" name="supplier[]" id="supplier[]">
    <option value="0">Select Item</option>
    @foreach ($items as $item)
    <option value="{{{ $item->id }}}">{{{ $item->code}}} - {{{ $item->description}}}</option>
    @endforeach
</select>

1 个答案:

答案 0 :(得分:0)

建立值词典=&gt;计数和添加到字典时检查密钥是否已存在。

这样的事情应该有效:

var counts = {};
$("select[name='supplier[]']").each(function(i, el) {
    var val = $(el).val();
    if (typeof counts[val] == 'undefined') {
        counts[val] = 1;   
    } else {
        alert('value ' + val + ' entered more than once');   
    }
});