.addClass('禁用')不起作用

时间:2015-07-22 14:02:39

标签: jquery

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

$('.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>

1 个答案:

答案 0 :(得分:5)

TYPO:

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

添加缺失的$。您的控制台中应该出现错误,指出&#34; val不是函数&#34;

同时添加课程不会禁用按钮。您需要设置属性。

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