1

ajax 呼び出しの成功関数から Jquery UI ダイアログを呼び出しています。ダイアログのコードは次のようになります -

    $.ajax({
          'url': "../../controller/myclass.cfc",
          'data':{
              method: "generateQuote",
              'quoteItems':quoteItems,
              returnFormat: "json"
          },
          success: function(data){
             $("#place_of_loading_image").hide();
             newQuoteId = data.toString();

               //New Quote Confirmation popup
                 $( "#newQuoteAddedAlert" ).dialog({
                    autoOpen: false,
                    resize: 'auto',
                    width: 'auto',
                    modal: true,
                    closeOnEscape: false,
                    closeText: "Close" ,
                    position: "center top",
                    buttons: [{
                        text:"Continue", click: function(){
                            $("#newQuoteAddedAlert").dialog("close");
                        }},
                        {text:"Finish",click: function(){   
                            $("#newQuoteAddedAlert").dialog("close");
                            //alert("shutup");
                            location.reload(); 
                        }
                    }]

                });


             //showConfirmationAlert(newQuoteId);

          },error: function( objRequest, strError ){
        }
     });

私の問題はlocation.reload()、ダイアログが読み込まれるとすぐに終了ボタン関数の内部が呼び出されることです。ユーザーが [完了] ボタンをクリックしたときにのみ実行されるようにします。

私は何を間違っていますか?

4

3 に答える 3

1

成功メソッドではなく $(document).ready ブロックでダイアログを定義してみてはいかがでしょうか? その場合、次のような成功した方法でダイアログを開く必要があります。

$( "#newQuoteAddedAlert" ).dialog('open');
于 2013-04-25T10:31:55.800 に答える
0

私は同じ奇妙な問題を抱えていました。あまり調べていませんでしたが、変えたら発生し始めました

<input type="button" value="Submit" onclick="submitForm()" />

に:

<button onclick="submitForm()">Submit</button>

だから私は単にそれを元に戻しました。

于 2015-11-05T17:24:31.953 に答える