我需要一些帮助来缩短这段代码,我只是稍微偏了一点。这是原始代码:
$("#MKDPT").change(function() {
if ($("#MKDPT").is(":checked") && $("#AMX1N").is(":not(:checked)") ||
("#ERXXN").is(":not(:checked)")) {
alert(this.id);
}
});
我将添加更多id。我可以创建一个ID的数组,确保不检查并与之进行比较吗?我不确定你是否可以检查是否检查了数组中的任何项目,或者我是否需要通过.length进行检查?
实施例
$("#MKDPT").change(function() {
if ($("#MKDPT").is(":checked") && $("#AMX1N").is(":not(:checked)") ||
("#ERXXN").is(":not(:checked)") || ("#ID").is(":not(:checked)") || ("#ID").is(":not(:checked)") ||
("#ID").is(":not(:checked)") || ("#ID").is(":not(:checked)") || ("#ID").is(":not(:checked)")) {
alert('foo');
}
});
这就是我想要的,但遇到了麻烦:
$("#MKDPT").change(function() {
var ckd = new Array = ("AMX1N","ERXXN","ID","ID","ID","ID","ID","ID","ID")
if ($("#MKDPT").is(":checked") && ckd.is(":not(:checked)")) {
alert('foo');
}
});
Kane Leins
答案 0 :(得分:0)
一种方法就是这样:
$("#MKDPT").change(function() {
var ckd = new Array ("AMX1N","ERXXN","ID");
for(var i = 0; i < ckd.length; i++)
{
if ($("#" + ckd[i]).is(":checked")) {
alert('foo');
break;
}
}
});
for
循环遍历每个数组元素并检查是否检查了具有此类id的任何元素,如果是,则会发出警告。