如何将jQuery对话框弹出特定次数?

时间:2012-04-27 13:25:50

标签: jquery jquery-ui

如何确定对话框在jQuery中显示的次数。 我有一个模态弹出对话框,我希望当用户点击对话框显示的内容2次时,在第三次单击时它不会。

$(document).ready(function(){

    $('#something_to_clicked').click(function(){

          $('#dialog_content').dialog({modal: true});
    });
});

2 个答案:

答案 0 :(得分:3)

$(document).ready(function(){

    var timesShown = 0;
    $('#something_to_clicked').click(function(){
          if (timesShown == 2) return;
          $('#dialog_content').dialog({modal: true});
          timesShown++
    });
});

答案 1 :(得分:1)

我会使用.data()将其附加到对话框本身:

$('#dialog_content').dialog({
    modal: true,
    autoOpen: false
}).data('timesShown', 0);

$('#something_to_clicked').click(function() {
    var myt = $('#dialog_content');
    if (myt.data('timesShown') < 2) {
        $('#dialog_content').data('timesShown', (1 + myt.data('timesShown')));
        myt.text(myt.text() + myt.data('timesShown')); //just to show
        myt.dialog("open");
    };
});

在此处查看此行动:http://jsfiddle.net/ZY795/