elm = ('cbProducts' + suffix);
_ctl = document.forms[0].elements[elm];


当我的列表中有多个复选框时,此方法有效。
但是,当只有1时,_ctl是未定义的。

如果可能的话,宁愿使用jQuery并且具有类似以下内容:

elm = ('cbProducts' + suffix).trim();
_ctl = $("form :input #cbProducts*");


下一步是分配_ctl(_ctl.length)的长度,但是对于元素集合中的仅1个复选框,该值为null。

最佳答案

因此,您需要所有ID以cbProducts开头的输入吗?

$("form input[id^='cbProducts']");


还是您想在ID的任何位置输入cbProducts

_ctl = $("form input[id*='cbProducts']");


当然,_ctl.length将为您提供此集合中的元素数量。



编辑

根据您的评论,如果您知道要查找的ID,则可以使用以下方法:

$("form input[id='cbProducts' + elm]");


选择这个

$("#cbProducts" + elm);

08-19 02:20