我正在尝试使用js从此表单中获取所有选中的项目。 我查看了以前的解决方案,但找不到适合我的东西。
<form id="checkform" class="container" style="margin-top:20px;">
<input type="checkbox" name="MX" value="MX" onclick="func(checkform)"> MX <br>
<input type="checkbox" name="SPF" value="SPF" onclick="func(checkform)"> SPF <br>
<input type="checkbox" name="DMARC" value="DMARC" onclick="func(checkform)"> DMARC <br>
<input type="checkbox" name="VRFY" value="VRFY" disabled> VRFY<br>
<input type="checkbox" name="SMTPTLS" value="SMTPTLS" disabled> SMTPTLS<br>
<input type="checkbox" name="OpenRelay" value="OpenRelay" disabled> OpenRelay<br>
<input type="checkbox" name="ReverseDNS" value="ReverseDNS" disabled> ReverseDNS <br>
<input type="checkbox" name="BlackList" value="BlackList" disabled> Black List <br>
</form>
im希望获得包含所有选中元素名称的列表。
答案 0 :(得分:5)
使用find("input:checkbox:checked")
来获取表单中的复选框,希望这会有所帮助
$('#checkform').submit(function(e){
e.preventDefault();
var list=[]
$(this).find("input:checkbox:checked").each(function(e){
list.push($(this).val())
})
console.log(list)
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form id="checkform" class="container" style="margin-top:20px;">
<input type="checkbox" name="MX" value="MX" > MX <br>
<input type="checkbox" name="SPF" value="SPF" > SPF <br>
<input type="checkbox" name="DMARC" value="DMARC" > DMARC <br>
<input type="checkbox" name="VRFY" value="VRFY" disabled> VRFY<br>
<input type="checkbox" name="SMTPTLS" value="SMTPTLS" disabled> SMTPTLS<br>
<input type="checkbox" name="OpenRelay" value="OpenRelay" disabled> OpenRelay<br>
<input type="checkbox" name="ReverseDNS" value="ReverseDNS" disabled> ReverseDNS <br>
<input type="checkbox" name="BlackList" value="BlackList" disabled> Black List <br>
<button class="getchecked">Submit</button>
</form>