用jquery mobile点击禁用按钮

时间:2013-07-29 12:27:34

标签: javascript jquery jquery-mobile

HTML:

    <script src="http://zurb.com/playground/javascripts/plugins/jquery.textchange.min.js"></script>
<form>
        <input type="text" name="comment" id="comment" placeholder="Comment" maxlength="140" value=""/>
      <div id="charactersLeft"></div>
        <input type="submit" id="commentButton" data-icon="edit" data-inline="true" data-mini="true" data-theme="b" value="Send" disabled="disabled"/>
    </form>
    <div id="actionList">
    </div>

JS:

$('#comment').bind('hastext', function () {
  $('#commentButton').button('enable');
});

$('#comment').bind('notext', function () {
  $('#commentButton').button('disable');
});

$('#comment').bind('textchange', function (event, previousText) {
  $('#charactersLeft').html( 140 - parseInt($(this).val().length) );
});

  $('#commentButton').click(
    function(){
        $('#actionList').prepend('<p class="item">' + $('input[name=comment]').val().trim() + '</p>');
        $('#commentForm').each (function(){ this.reset(); });
        //document.getElementById('commentForm').reset();
        $(this).button('disable');
    }
);

Fiddle上,它在我的机器上运行另一个。所以,测试本地。问题是:当我写评论时,我点击按钮,在#actionList中评论apears,按钮被阻止。尼斯。但。如果我想写一个新评论,该按钮将被禁用。我输入文字,但我无法点击按钮。我在输入中删除了我的新文本,而且我可以写一些内容并最终启用了按钮。

很奇怪,怎么解决?感谢。

1 个答案:

答案 0 :(得分:1)

我添加了该行,删除发布后的评论:

$('#comment').val("");

我还使用此代码替换了您的hastextnotext函数,并添加到textchange函数中:

var tb_value = this.value;
if (tb_value == "") {
    $('#commentButton').button('disable');
} else {
    $('#commentButton').button('enable');
}

请参阅Fiddle