单击文本框后启用提交按钮
Enabling submit button after clicking textbox
>我有以下代码用于在单击复选框后启用提交按钮。
.HTML:
<input type="checkbox" checked="checked" id="check"><a href="#">terms and conditions</a>
<input type="submit" name="submit" id="post" value="submit">
脚本:
$('#check').click(function(){
if($(this).attr('checked') == false){
$('#post').attr("disabled","disabled");
}
else {
$('#post').removeAttr('disabled');
}
});
但这在我的本地主机中不起作用。即使未选中该复选框,该按钮也始终处于启用状态。请帮助我使其工作。
$('#check').click(function() {
$('#post').prop('disabled', !$(this).is(':checked'));
}
.attr()
检查 HTML 中的属性,而不是 HTML 的当前状态; .is(':checked')
测试后者。另外,我认为最好使用 .prop()
来动态更改元素的禁用状态。
如果您选中然后取消选中复选框,它会禁用它吗?如果是这样,那么您只需要将禁用设置为默认状态。
使用.is(':checked')
$('#check').click(function() {
if(!$(this).is(':checked')) {
$('#post').attr("disabled","disabled");
} else {
$('#post').removeAttr('disabled');
}
});
$(this).attr('checked') 将永远为真,它只是读取 "checked" attr 值,
用
this.checked
或
$(this).prop('checked')
看到这个: http://jsfiddle.net/m6aBZ/
这是菲尔德勒
这是使用它的javascript
$(function(){
$('#check').click(function(){
if($(this).attr('checked')!="checked"){
$("#post").attr("disabled","disabled");
} else {
$("#post").removeAttr("disabled");
}
});
});
很多答案。
不要调用任何表单控件"提交",因为它将隐藏表单的提交方法(即 form.submit
将引用控件,而不是方法)。
您所需要的只是以下内容:
<form ...>
<input type="checkbox" onclick="this.form.submitButton.disabled = !this.checked" ...>
<input type="submit" name="submitButton" disabled>
</form>
相关文章:
- 带有验证和隐藏字段值的提交按钮
- 如何在 API 调用后和 if 语句中启用提交按钮
- 提交按钮,该按钮位于使用 Excel VBA 的 Javascript 中
- 如何使用提交按钮搜索表中的记录
- 在单击按钮前后禁用提交按钮
- 在表单完成并确认密码之前,请禁用提交按钮
- 如何使用Java脚本创建提交按钮's的拖放功能
- 如何在单击“提交”按钮时为“新建”窗口编写JavaScript,用“确定”和“取消”显示注册信息
- 提交按钮通过JQuery和JavaScript函数所做的更改不会持续
- 从输入时提交到jQuery,无需提交按钮,无需表单操作
- onclick提交按钮JSP
- 通过提交按钮传递值
- 如果ng单击附加到提交按钮,则表单未验证
- 如何在Razor MVC 5.2.3 Ajax中使用多个提交按钮
- 使用提交按钮隐藏未选中的单选按钮
- Ruby/JS如何在提交按钮后重新加载页面
- JavaScript表单提交没有't fire asp服务器端点击功能的提交按钮
- 使用javascript后,提交按钮不起作用
- 如何使用jQuery/Ajax响应特定的提交按钮
- 表单中的提交按钮在 PHP 打印中不起作用