0

我有一个链接按钮,当它被按下时显示确认窗口功能:

$('#LinkButton1').click(function () {
     var continue = confirm('¿CONTINUE?');
    if (continue) {
        return true;
    }
    else
        return false;
});

我想在页面加载时禁用链接按钮、它的样式和它的 clic 事件:

 $('#LinkButton1').attr("disabled", "disabled").on('click', function (e) {
    e.preventDefault()
 });

链接按钮已禁用,并且 onclic 服务器事件已删除,但仍显示提示。

当用户在文本框中输入内容时,应该再次启用此 linbutton 并获取先前未绑定的 clic 事件:

 $(':input').keypress(function () {
    $('#LinkButton1').removeProp('disabled').off('click');
});

这将返回服务器 onclic 事件,但我现在错过了确认窗口。

演示: http: //jsfiddle.net/Tvbg9/3/ 在这个演示中,确认窗口没有显示,但我仍然在我的页面中看到。

我做错了什么?谢谢你。

4

4 回答 4

0

如果在任何文本框上按下任何键,我只允许 clic 事件:

$('#LinkButton1').attr("disabled", "disabled").on('click', function (e) {
    e.preventDefault();
  return false;
});

$(':input').keypress(function () {
    $('#LinkButton1')
    .removeProp('disabled')
    .off('click')
    .click(function () {
         var continue = confirm('¿CONTINUE?');
         if (continue) {
           return true;
         }
         else
           return false;
    });
});

​</p>

于 2012-11-23T12:36:31.813 回答
0

这是要走的路:

http://jsfiddle.net/Tvbg9/

$('#LinkButton1').on('click',function(e){e.preventDefault()});

    $(':input').keypress(function () {
        $('#LinkButton1').off('click');
    });​
于 2012-11-23T11:43:41.010 回答
0

而不是使用这个

        $('#LinkButton1').attr("disabled","")

你可以试试这个

    $('#LinkButton1').removeAttr("disabled")

希望它应该工作

于 2012-11-23T11:35:51.680 回答
0

尝试以下禁用按钮

$('#LinkButton1').click(function() { return false; });

然后对于输入:

$('input').change(function () {
    if ($(this).val().length > 0)
        $('#LinkButton1').unbind('click');
});​

希望这可以帮助!

于 2012-11-23T11:36:51.930 回答