【问题标题】:Reset input value without refreshing the page在不刷新页面的情况下重置输入值
【发布时间】:2014-08-04 10:04:15
【问题描述】:

如果我的表单输入为空,我正在尝试禁用搜索提交按钮,如果没有搜索任何内容,这可以正常工作,但如果我提交搜索然后(一旦页面加载)清除搜索输入并单击提交同样,该按钮并未被禁用。

我正在使用此代码禁用提交按钮

$("#searchform input#search-submit").click(function() { var sValue = $('#searchform input#s').val(); if (sValue != "") { $('form#searchform input[type=submit]').removeAttr('disabled'); } else { $('form#searchform input[type=submit]').attr('disabled', 'disabled'); } });

我发现问题在于输入字段保留了我之前搜索过的任何值,因此该按钮不会被禁用,因为它会检查输入值并认为它不为空。

有没有办法在不刷新页面的情况下清除输入字段后自动删除输入值?

更新:

这是fiddle

【问题讨论】:

    标签: jquery html forms input submit


    【解决方案1】:

    在这里,我将 Jsfiddle 链接包含在您的预期结果中,请参阅下面的链接,您将获得结果。

    $("#searchform input#searchsubmit").click(function() {
        var sValue = $('#searchform input#s').val();
        if (sValue != "") {
            $('form#searchform input[type=submit]').removeAttr('disabled');
            return true;
        } else {
            $('form#searchform input[type=submit]').attr('disabled', 'disabled');
            return false;
        }
    return false;
    });
    

    http://jsfiddle.net/j7zwT/30/

    【讨论】:

      【解决方案2】:

      如果您在输入#s 为空时单击搜索按钮,则该按钮将变为禁用状态。 然后它不能再次按下,也不能重新启用。 在 changedkeypress 等其他活动中尝试:

      $('form#searchform input#s').changed(function() ...
      

      还要考虑到,根据 jQuery 版本(1.9 或更高版本),您必须使用 .prop() 启用和禁用(或添加/删除复选标记)控件:

      $('form#searchform input[type=submit]').prop('disabled', true);
      

      更多关于how migrating to jQuery 1.9的信息

      【讨论】:

      • 禁用按钮并不是真正的问题,它会在不刷新的情况下清除输入值
      • 但是您要在哪里清除输入内容?我看不到。
      • 对不起,我的问题描述不是很好,我没有使用 Jquery 清除它,这只是如果您使用退格/剪切删除页面上的输入文本
      【解决方案3】:

      我认为将您的点击与 live 或 on 绑定会帮助您解决问题 $("#searchform input#searchsubmit").click(function(e) { var sValue = $('#searchform input#s').val(); alert(sValue) if (sValue != "") { $('form#searchform input[type=submit]').removeAttr('disabled'); } else { e.preventDefault() $('form#searchform input[type=submit]').attr('disabled', 'disabled'); } });

      【讨论】:

      • 我试过使用你的代码,但输入仍然保留它的价值
      • 我在我的问题上添加了一个小提琴链接
      • 看看这个是否有帮助你需要做的就是在文本框之外启用搜索按钮
      猜你喜欢
      • 1970-01-01
      • 2013-06-04
      • 1970-01-01
      • 2017-05-11
      • 2013-04-07
      • 1970-01-01
      • 1970-01-01
      • 2014-10-13
      • 2022-11-27
      相关资源
      最近更新 更多