Javascript 禁用按钮如果一个字段有输入但另一个字段没有,则在两个字段都有值时启用(一个是选择)
这里没有显示一组必填字段,但有两个是可选的。但是,如果这两个函数中的任何一个得到输入,则另一个是必需的。因此,我试图做到的是,在一个或另一个有输入时禁用submit按钮,然后在两个都有输入时重新启用它。我还需要重新启用,如果两者都清除回空 我好像快到了。一个是选择,另一个是文本输入。我认为我的问题之一是需要在同一个函数中使用“keyup”和“onchange”,或者可能是模糊或其他完全不同的东西 这是我的开始。这可能不是正确的方向,但它的一半工作,所以希望这是一个简单的修复 HTML 而不是 $'notesave'.attr'disabled',true和 $'notesave'.removeAttr'disabled' 试一试 $'notesave'.prop'disabled',true和 $'notesave'.prop'disabled',false 禁用的HTML属性仅由浏览器用于在呈现页面时确定初始值。disabled DOM属性实际存储输入是否被禁用的值Javascript 禁用按钮如果一个字段有输入但另一个字段没有,则在两个字段都有值时启用(一个是选择),javascript,jquery,Javascript,Jquery,这里没有显示一组必填字段,但有两个是可选的。但是,如果这两个函数中的任何一个得到输入,则另一个是必需的。因此,我试图做到的是,在一个或另一个有输入时禁用submit按钮,然后在两个都有输入时重新启用它。我还需要重新启用,如果两者都清除回空 我好像快到了。一个是选择,另一个是文本输入。我认为我的问题之一是需要在同一个函数中使用“keyup”和“onchange”,或者可能是模糊或其他完全不同的东西 这是我的开始。这可能不是正确的方向,但它的一半工作,所以希望这是一个简单的修复 HTML 而不是 $
我想我明白了。就像我说的,我需要在同一个函数中同时进行键控和更改。我相信这种“束缚”正在如期发挥作用。如果我错了,请纠正我
$('#createnewtask').bind('keyup change', function () {
if ($('#ftasktypeid').val() != 0 && $('#fduedate2').val() != "") {
$('#notesave').prop('disabled', false);
} else if ($('#ftasktypeid').val() == 0 && $('#fduedate2').val() == "") {
$('#notesave').prop('disabled', false);
} else {
$('#notesave').prop('disabled', true);
}
});
我还根据@tomaroo的建议编辑了“道具”。谢谢
我更新了 如果在选择select之前无法设置到期日,只需在设置select之前隐藏到期日,然后将到期日设为必需
$('#createnewtask').keyup(function () {
if ($('#ftasktypeid').val() != 0 && $('#fduedate2').val() != "") {
$('#notesave').removeAttr('disabled');
} else if ($('#ftasktypeid').val() == 0 && $('#fduedate2').val() == "") {
$('#notesave').removeAttr('disabled');
} else {
$('#notesave').attr('disabled', true);
}
});
$('#createnewtask').bind('keyup change', function () {
if ($('#ftasktypeid').val() != 0 && $('#fduedate2').val() != "") {
$('#notesave').prop('disabled', false);
} else if ($('#ftasktypeid').val() == 0 && $('#fduedate2').val() == "") {
$('#notesave').prop('disabled', false);
} else {
$('#notesave').prop('disabled', true);
}
});