Javascript 如果复选框未选中,则禁用表单提交
我正在尝试使用函数Javascript 如果复选框未选中,则禁用表单提交,javascript,html,checkbox,Javascript,Html,Checkbox,我正在尝试使用函数checkbox()禁用表单提交 有人能告诉我我做错了什么吗 提前谢谢 以下是JS的代码片段: <script type = "text/javascript"> function checkbox() { if(document.form.checkbox.checked) { document.form.submit.disabled=false; } else
checkbox()
禁用表单提交
有人能告诉我我做错了什么吗
提前谢谢
以下是JS的代码片段:
<script type = "text/javascript">
function checkbox() {
if(document.form.checkbox.checked)
{
document.form.submit.disabled=false;
}
else
{
document.form.submit.disabled=true;
}
}
</script>
函数复选框(){
if(document.form.checkbox.checked)
{
document.form.submit.disabled=false;
}
其他的
{
document.form.submit.disabled=true;
}
}
这是HTML代码
<form name="form" action="shop_paypal.php" method="post">
<input name="cmd" type="hidden" value="_xclick" />
<input name="no_note" type="hidden" value="1" />
<input name="lc" type="hidden" value="UK" />
<input name="currency_code" type="hidden" value="USD" />
<input name="bn" type="hidden" value="PP-BuyNowBF:btn_buynow_LG.gif:NonHostedGuest" />
<input type="hidden" name="item_name" id="item_name"value="YOUTUBE"/>
<select name="amount" id="amount" style="width:256px; height:32px;">
<option value="18" id="1">10,000 PINS - $18 </option>
<option value="35" id="2">20,000 PINS - $35</option>
<option value="75" id="3">30,000 PINS - $75</option>
<option value="140" id="4">50,000 PINS - $140</option>
</select>
<label>Your Facebook fan page URL: </label><br />
<input class="input-box" type="text" />
<input type="text" />
<input type="checkbox" class="checkbox" name="checkbox" id="checkbox"/>
<label class="agree">I agree to <a href="#">Terms & Conditions</a></label>
<input type="image" src="images/products/buynow.gif" class="submit" onclick= "checkbox();" name = "submit"/>
</form>
10000针-18美元
20000针-35美元
30000针-75美元
50000针-140美元
您的Facebook粉丝页面URL:
我同意
显而易见的第一个想法是:
var form = document.getElementsByTagName('form')[0];
function check (){
return document.getElementById('checkbox').checked;
}
form.addEventListener('submit', check);
显而易见的第一个想法是:
var form = document.getElementsByTagName('form')[0];
function check (){
return document.getElementById('checkbox').checked;
}
form.addEventListener('submit', check);
试试这个,注意函数是如何简化的,调用被移动到复选框本身。选中时,按钮处于启用状态,未选中时,按钮处于禁用状态(这也是默认状态)
这里还有一个工作演示:
函数enableSending(){
document.form.submit.disabled=!document.form.checkbox.checked;
}
10000针-18美元
20000针-35美元
30000针-75美元
50000针-140美元
您的Facebook粉丝页面URL:
我同意
试试这个,注意函数是如何简化的,调用被移动到复选框本身。选中时,按钮处于启用状态,未选中时,按钮处于禁用状态(这也是默认状态)
这里还有一个工作演示:
函数enableSending(){
document.form.submit.disabled=!document.form.checkbox.checked;
}
10000针-18美元
20000针-35美元
30000针-75美元
50000针-140美元
您的Facebook粉丝页面URL:
我同意
@nikica。。那也很有效。。你能告诉我为什么我的代码不起作用吗?你使用了“checkbox”作为你的函数名-这也是一个对象名,所以在JS中出现了这个错误。。。“未捕获类型错误:对象不是函数”。但是也有两个逻辑上的缺陷——你在提交按钮上执行了这个功能——而且因为它需要被激活,所以禁用它(在它被点击之后)没有任何意义。在此基础上,您编写的IF语句实际上是在选中按钮时将其设置为禁用状态,这与您试图实现的相反。@nikica。。那也很有效。。你能告诉我为什么我的代码不起作用吗?你使用了“checkbox”作为你的函数名-这也是一个对象名,所以在JS中出现了这个错误。。。“未捕获类型错误:对象不是函数”。但是也有两个逻辑上的缺陷——你在提交按钮上执行了这个功能——而且因为它需要被激活,所以禁用它(在它被点击之后)没有任何意义。在此基础上,您编写的IF语句实际上是在选中按钮时将其设置为禁用状态,这与您尝试完成的相反。