【问题标题】:how to disable html input fields and buttons using jquery [closed]如何使用 jquery 禁用 html 输入字段和按钮 [关闭]
【发布时间】:2015-07-22 14:02:38
【问题描述】:

我无法禁用按钮。我想要做的是禁用按钮,除非在输入中输入一些单词。以下是我的代码。

$('.btn.btn-default').click(function(){
    var post = $('input:text').val();
    $('<li>').text(post).prependTo('.posts');
    $('input:text').val("");
    $('.count').text('100');
    $('.btn.btn-default').addClass('disabled');
    });


$('input:text').keyup(function(){
    var postLength = (this).val().length;
    var charactersLeft = 100 - postLength;
    $('.count').text(charactersLeft);   
    if (charactersLeft < 0){
    $('.btn.btn-default').addClass('disabled');
    }
    else if (charactersLeft == 100){
        $('.btn.btn-default').addClass('disabled'); 
    }
    else{
        $('.btn.btn-default').removeClass('disabled');
    }
});

$('.btn.btn-default').addClass('disabled');

};

以下是我的 HTML

<div class= "blank">
    <input type="text" id="form-control" placeholder="Please Leave Comment Here."/>
    </div>


    <div class = "status">
    <div class= "count">100</div>
    <input class="btn btn-default" type="submit" value="Post">
    </div>

    <ul class="posts">
    </ul>

【问题讨论】:

  • 你能给我们一个小提琴(jsfiddle.net)吗?
  • 仅仅添加一个disabled 类不会自动禁用它。你需要使用 Bootstrap 来做到这一点。
  • 尝试将其添加到页面的&lt;head&gt; 部分:&lt;link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"&gt;
  • @Abraar Arique 谢谢。我得到了它。我可以设置属性或使用引导程序。两者都有效。

标签: jquery disabled-input


【解决方案1】:

错字:

(this).val().length;
^^^

添加缺少的$。您应该在控制台中出现错误,指出 "val is not a function"

添加类也不会禁用按钮。您需要设置属性。

$(".btn.btn-default").prop('disabled', true);
$(".btn.btn-default").prop('disabled', false);

【讨论】:

  • 嗨,感谢您的错字更正。问题是该按钮没有被禁用。我不知道为什么。我没有在输入中输入任何内容,我仍然可以单击“发布”按钮。
  • 添加类不会禁用按钮!
  • 哇。有用。非常感谢您的帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-29
  • 2017-06-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多