我有一个可能的复选框列表,用户最多可以选择三个选项。我正在努力解决的是如何识别选中了哪些框,然后将它们分配给变量(以便在以后的 ajax 调用中发送)。到目前为止,我编写的代码似乎只采用前三个复选框值,无论它们是否被选中,并在我的 ajax 调用中使用它们。请帮我弄清楚我哪里出错了。
这是我的 HTML:
<ul id="Names" class="stateNames">
<li>Alabama
<ul class="airports">
<li><input type="checkbox" class="destination"/> Birmingham, AL</li>
<li><input type="checkbox" class="destination"/> Huntsville, AL</li>
</ul>
<li>Alaska
<ul class="airports">
<li><input type="checkbox" class="destination"/> Anchorage, AK</li>
<li><input type="checkbox" class="destination"/> Fairbanks, AK</li>
<li><input type="checkbox" class="destination"/> Juneau, AK</li>
</ul>
</li>
</ul>
<input type="button" onclick="clickHandler()" value="Submit" />
这是我的 javascript/jquery:
function clickHandler() {
endLocDest1 = "";
endLocDest2 = "";
endLocDest3 = "";
for(i = 0; i < document.getElementsByClassName('destination').length; i++) {
if (document.getElementsByClassName('destination')[i].checked) {
endLocDest1 = document.getElementsByClassName('destination')[0].value;
endLocDest2 = document.getElementsByClassName('destination')[1].value;
endLocDest3 = document.getElementsByClassName('destination')[2].value;
}
alert(endLocDest1 + endLocDest2 + endLocDest3);
};
}
我还将这段代码放入小提琴http://jsfiddle.net/6ywm1n6h/3/(目前不返回任何内容)。
提前致谢!