-1

ユーザーがコメントを入力するためにjqueryダイアログを使用しています.jqueryダイアログ内にボタンを追加してキャンセルしました。私は、データベースにテキストを挿入し、html ページ全体で iframe のみを更新する必要がある追加をヒットしたときのようなロジックを持っています。すべてが完璧に機能します。ただし、iframe を更新すると、古いダイアログが dom イベントに保持されます。そのため、2回目にクリックすると、予想される画面が表示されます。しかし、最初のクリックで古いjqueryダイアログが保持される理由がわかりません。

私はこのコードを使用しています:;

   $("#dialog-confirm").dialog({
        resizable: false,
        height: 200,
        modal: true,
        autoOpen: false,
       buttons: [
        {
            id: "add_btn",
            text: "Add",
           disabled: true,
            click: function () {
           // logic of adding text in db goes here.
             $(this).dialog("close");
            }
        },
        {
            id: "cancel_btn",
            text: "Cancel",
            click: function () {
            $(this).dialog("close");
            }
        }
        ]
    });

前もって感謝します。

4

2 に答える 2

0

iframe がキャッシュされているようです。これを調べてください。

ブラウザでの iframe キャッシュの防止

テスト用に使用しているブラウザとバージョンも投稿してください。

于 2012-09-10T16:02:50.330 に答える
0
function resetForm($form) {
    $form.find('input:text, input:password, input:file, select, textarea').val('');
    $form.find('input:radio, input:checkbox')
         .removeAttr('checked').removeAttr('selected');
}

そして電話するresetForm($('#myform')); // by id

また

jQuery.fn.reset = function () {
  $(this).each (function() { this.reset(); });
}

電話$("#FormID").reset();

また

$('#FormID').each (function(){
  this.reset();
});

上記のコードを使用したフォームが正しい場合は、 このように使用される場合はそうではありません

$("#clear").click(function(){
    $("input[type='text']").val(""); 
});
于 2012-09-10T15:59:58.303 に答える