1

これが私の問題です...

次の jQuery UI スクリプトがあります。

    <script>
$(function() {
    $( "#dialog" ).dialog({
        autoOpen: false,
        show: "slideUp",
        hide: "slideDown",
        height: "300",
        width: "400",
        title: "Test pop-up",
        buttons: {
            "Close": function(){
                $(this).dialog("close");
                    }
                }
            }           
        );

    $( "p.diag").click(function(e) {
        var monUrl = 'test2.php'; 
        $('#dialog').load(monUrl, function(response, status) {
        $('#test_dialog').html(response);
    });
    e.preventDefault();
});

    $( "p.diag").click(function() {
    $( "#dialog" ).dialog("open");
    });

これは非常に単純なコードで、p.diag クラスをクリックするとダイアログ ボックスが正しく開きますが、閉じた後は再び開かれません。

test2.php ページは、エコー "lol" とともに "lol" を出力するだけです。

そして、ここに私のHTMLがあります:

<div style="height: 200px; min-height: 109px; width: auto;" class="ui-dialog-content  ui-widget-content" id="dialog">
  </div>

ありがとう !

4

1 に答える 1

1

削除してくださいe.preventDefault();

このデモを参照してください: http://jsfiddle.net/ngwJ3/

理由: http://api.jquery.com/event.preventDefault/ : このメソッドが呼び出された場合、イベントのデフォルト アクションはトリガーされません。

この助けを願っています:)

于 2012-07-04T08:30:05.467 に答える