我有多个下拉列表,里面内容一样,val为5的不能超过三个,否则不让选。我是想每点击一个下拉列表都遍历一遍val为5的select的个数,用的$(".evaluate_select[value='5']").length,但是每次alert都弹出0,改用了$(".evaluate_select option[value='5']").length也是不对的。我觉得是因为select本来就没有val值,但是为什么用select.val()又能得到当前select的值呢?而用option又会遍历我所有的option,所以也不行。请问还有什么方法吗?HTML:<!--有多个这样的select,此处我就贴了一个--><select class="evaluate_select" name="evaluate_select"> <option value="0" selected="selected">请选择</option> <option value="5">A 优秀</option> <option value="4">B 称职</option> <option value="3">C 基本称职</option> <option value="2">D 不称职</option></select>JS:$(".evaluate_select").change(function () { $(".evaluate_select").each(function(i){ alert($(".evaluate_select[value='5']").length); })})
1 回答
30秒到达战场
TA贡献1828条经验 获得超6个赞
var number = 0;
$('.evaluate_select').each(function(){
parseInt($(this).val(), 10) === 5 && number++;
}
if(number > 3) return;
请参考上方的代码.
添加回答
举报
0/150
提交
取消