我想防止每行重复第一个下拉选项。我试过下面的代码。但它没有用。
$('table tr').each(function(){
$('select:eq(0)').change(function(){
if($('option[value='+$(this).val()+']:selected').length>1)
{
alert('option is already selected');
$(this).val($(this).find("option:first").val());
}
});
});
这里我想在仅针对每行的类别下拉列表时提醒消息。
FIDDLE: http://jsfiddle.net/y00h1j5x/1/
答案 0 :(得分:2)
更新代码如下:
id key col1
-- --- -----
1 1 abc
2 2 d
3 3 s
4 4 xyz
http://jsfiddle.net/y00h1j5x/4/
仅为该元素添加事件,该元素不是所有先前元素的新元素。
答案 1 :(得分:1)
我会在包含下拉选项的单元格中添加一个类
function addrow()
{
var row="<tr>"+
'<tr>'+
'<td class="category"><select>'+
..............
...............
并更改选择器并执行以下操作:
$("#table").append(row);
$('.category select').change(function(){
var selected_val = $(this).val();
var current = this;
$('.category select').not(this).each(function(){
if($(this).val()==selected_val){
alert('option is already selected');
$(current).val('');
return false;
}
});
});