Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 禁用按钮如果一个字段有输入但另一个字段没有,则在两个字段都有值时启用(一个是选择)_Javascript_Jquery - Fatal编程技术网

Javascript 禁用按钮如果一个字段有输入但另一个字段没有,则在两个字段都有值时启用(一个是选择)

Javascript 禁用按钮如果一个字段有输入但另一个字段没有,则在两个字段都有值时启用(一个是选择),javascript,jquery,Javascript,Jquery,这里没有显示一组必填字段,但有两个是可选的。但是,如果这两个函数中的任何一个得到输入,则另一个是必需的。因此,我试图做到的是,在一个或另一个有输入时禁用submit按钮,然后在两个都有输入时重新启用它。我还需要重新启用,如果两者都清除回空 我好像快到了。一个是选择,另一个是文本输入。我认为我的问题之一是需要在同一个函数中使用“keyup”和“onchange”,或者可能是模糊或其他完全不同的东西 这是我的开始。这可能不是正确的方向,但它的一半工作,所以希望这是一个简单的修复 HTML 而不是 $

这里没有显示一组必填字段,但有两个是可选的。但是,如果这两个函数中的任何一个得到输入,则另一个是必需的。因此,我试图做到的是,在一个或另一个有输入时禁用submit按钮,然后在两个都有输入时重新启用它。我还需要重新启用,如果两者都清除回空

我好像快到了。一个是选择,另一个是文本输入。我认为我的问题之一是需要在同一个函数中使用“keyup”和“onchange”,或者可能是模糊或其他完全不同的东西

这是我的开始。这可能不是正确的方向,但它的一半工作,所以希望这是一个简单的修复

HTML

而不是

$'notesave'.attr'disabled',true和

$'notesave'.removeAttr'disabled'

试一试

$'notesave'.prop'disabled',true和

$'notesave'.prop'disabled',false

禁用的HTML属性仅由浏览器用于在呈现页面时确定初始值。disabled DOM属性实际存储输入是否被禁用的值


我想我明白了。就像我说的,我需要在同一个函数中同时进行键控和更改。我相信这种“束缚”正在如期发挥作用。如果我错了,请纠正我

$('#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);
    }
});