我使用ASP.NET MVC 4开发Web应用程序。我有一个页面,其中包含一个提交按钮,只有在启用了我的两个复选框之一(或两个复选框)时才应启用该按钮。问题是,我试图添加"或"运算符在下面的脚本中,但它没有给我我想要的。所以,这是我的剧本:
这是我想改进的部分:
$(document).ready(function() {
the_terms = $("#the-terms");
the_terms2 = $("#the-terms2");
the_terms.click(function() {
if ($(this).is(":checked")){
$("#submitBtn").removeAttr("disabled");
} else {
$("#submitBtn").attr("disabled", "disabled");
}
});
});
我找不到告诉我的文件的方法"好的,如果检查了这两个复选框中的一个(或两个),我们可以按下按钮。如果没有,请不要允许它#34;。
任何想法的人?
答案 0 :(得分:3)
可以通过以下方式完成:
<强> Fiddle 强>
$('.checkbox').change(function(){
$('#submitBtn').prop('disabled', !$('.checkbox:checked').length > 0)
});
注意:
checkbox
查找复选框,因此它可以使用两个复选框,而原始代码则通过其ID查看单个复选框。 change
事件而不是click
。答案 1 :(得分:1)
只需使用
$(".checkbox").click(function() {
$("#submitBtn").prop("disabled", !$('.checkbox:checked').length);
});
答案 2 :(得分:1)
$(document).ready(function() {
the_terms = $("#the-terms");
the_terms2 = $("#the-terms2");
$('.checkbox').change(function(){
$("#submitBtn").prop("disabled", !(the_terms.is(":checked") || the_terms2.is(":checked")));
});
});
答案 3 :(得分:0)
// Make a function to be called on onload or on click
function checkTerm() {
jQuery('input[type="submit"]').attr('disabled',!jQuery('input.term:checked').length > 0 ) ;
}
// Call the function on load
$(document).ready(checkTerm) ;
// And call it on check change
jQuery(document).on('change','input.term',checkTerm) ;
答案 4 :(得分:0)
尝试下面修改过的脚本,请检查它是否可以正常工作。
$(document).ready(function() {
the_terms = $("#the-terms");
the_terms2 = $("#the-terms2");
if(the_terms.is(":checked") || the_terms2.is(":checked"))
{
$("#submitBtn").removeAttr("disabled");
}
else
{
$("#submitBtn").attr("disabled", "disabled");
}
the_terms.click(function() {
if ($(this).is(":checked") || the_terms2.is(":checked")){
$("#submitBtn").removeAttr("disabled");
} else {
$("#submitBtn").attr("disabled", "disabled");
}
});
the_terms2.click(function() {
if ($(this).is(":checked") || the_terms.is(":checked") ){
$("#submitBtn").removeAttr("disabled");
} else {
$("#submitBtn").attr("disabled", "disabled");
}
});
});