Javascript验证无线电输入不工作
我正在使用下面的Javascript代码来验证在提交表单之前是否至少检查了一个无线电输入,但是我面临一个问题,因为表单总是提交,即使没有检查无线电输入……有人能告诉我这里缺少什么以及如何修复它吗?谢谢Javascript验证无线电输入不工作,javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,我正在使用下面的Javascript代码来验证在提交表单之前是否至少检查了一个无线电输入,但是我面临一个问题,因为表单总是提交,即使没有检查无线电输入……有人能告诉我这里缺少什么以及如何修复它吗?谢谢 <script type="text/javascript"> function processPayment() { if ($("input[name='orderAmount']:checked").length > 0){ alert('OK'
<script type="text/javascript">
function processPayment() {
if ($("input[name='orderAmount']:checked").length > 0){
alert('OK');
document.getElementById('orderFrm').submit();
return false;
}
else{
alert('Please select order amount');
}
}
</script>
<div id="content">
<form id="orderFrm" name="orderFrm" action="https://...." method="post" target="_top">
....
<div class="orderamnt">
<label for="orderAmount50">
<span class="labelText">50</span>
<input type="radio" id="orderAmount50" name="orderAmount" value="50"/>
</label>
</div>
<div class="orderamnt">
<label for="orderAmount100">
<span class="labelText">100</span>
<input type="radio" id="orderAmount100" name="orderAmount" value="100"/>
</label>
</div>
<div class="orderamnt">
<label for="orderAmount200">
<span class="labelText">200</span>
<input type="radio" id="orderAmount200" name="orderAmount" value="200"/>
</label>
</div>
<a class="buyNowButton" href="javascript:{}" onclick="processPayment()">Order</a>
....
</form>
</div>
注:
我在检查任何单选按钮时注意到它从以下位置更改:
<div id="orderamnt">
<span class="">
<input type="radio" id="orderAmount200" name="orderAmount" value="200"/>
到
很明显,单选输入没有被检查,这就是为什么我这边的单选输入显然不起作用,所以我想知道有没有办法通过单选按钮验证第一个父跨度?您需要使用
使用jQuery1.6.4或+,此代码可以正常工作
$('.buyNowButton').click(function(){
if ($("input[name='orderAmount']:checked").length > 0){
document.getElementById('orderFrm').submit();
return false;
}
else{
alert('Please select order amount');
}
});
未选择任何内容时不为我提交。另外,在提交表单后返回false也没有意义。您正在运行哪个版本的jQuery?我似乎还记得我在以下方面遇到过问题:几年前检查过,现在无法使用最新的jQuery进行复制。@75thTrombone我在我的问题中添加了一个小编辑,解释了我在使用Chrome开发工具检查/取消选中无线电输入时是如何发现html发生变化的。我在我的问题中添加了一个小编辑,解释了我在检查/取消选中无线电输入时是如何发现html发生变化的使用Chrome dev工具检查/取消选中无线电输入此选项应有效,请参阅:
if ($('input[name="orderAmount"]').is(':checked'))
{
}
$('.buyNowButton').click(function(){
if ($("input[name='orderAmount']:checked").length > 0){
document.getElementById('orderFrm').submit();
return false;
}
else{
alert('Please select order amount');
}
});