0

初めてデータを送信するカスタムボタンを備えたjquery uiダイアログがありますが、新しく開いたダイアログをもう一度クリックすると、2回、次に3回送信されます(ページのリロードなし)。ページをリロードすると正常に動作しますが、なぜですか? これは私の関数がどのように見えるかです:

function openPopup() {
     $('#box').dialog({
         autoOpen: true,
         modal   : true,
         title   : 'my title',
         width   : 500,
         open : function (event) {
            var dialog = $(this); 
            $(".buttonclass").live('click', function(event) {
                dialog.dialog('destroy');
                alert('hello'); //This alerts hello once first time, twice second time, etc.
            });
         },
         buttons : [
             {
                 text: 'Cancel',
                 click: function() {
                    $(this).dialog("destroy");
                 }
             }
         ]
     });
    }

私は何が欠けていますか?私は周りを見回して、クリックのバインド解除、ダイアログの破棄などを見つけましたが、どれも機能していません (ご覧のとおり、ダイアログを破棄しています)。

4

1 に答える 1