2011-07-14 9 views
0

私のメインビューページにpartialview Aがあります。このPartialviewからjquery ダイアログボックスを開き、その内部にpartialviewを開きます。 私はいくつかのタスクを行うことを意味しているそのpartialviewの中にいくつかのボタンを持っています ボタンをクリックするとイベントが発生しますが、以下のコードでダイアログボックスを閉じるとエラーが発生します。 ダイアログボックスが開いたときにエスケープを押すと閉じますが、ボタンをクリックして戻すと再び同じエラーが表示されます。 ie-私はダイアログボックスを1回だけ開くことができます。 partialviewからjqueryダイアログボックスを閉じるには

$(function() { 
    $("#dialog:ui-dialog").dialog("destroy"); 
    $('#dialog').dialog({ 
     autoOpen: false, 
     width: 700, 
     resizable: false, 
     modal: false, 
     open: function (event, ui) { $(this).load('<%=Url.Action("PushButton","Body",new {Parm="text",Parm1="para"}) %>'); }, 
     buttons: {Cancel: function() { 
       $(this).dialog("close"); 
      } 
     }, 
     position: 'top', 
     closeOnEscape: true 
    }); 
}); 

この

は、私はこれは私がそれをクローズしようとしているmは、それを通して機能がある

$('#dialog').dialog('open'); 

それを開くmをどのように、このダイアログボックスで開かれpartialviewにある

$('#dialog').dialog('close'); 

私はpartialview Aで関数を作成しようとしました(どこからクリックして取得し、ダイアログボックスから同じエラーになります) これは私が得るエラーです

のMicrosoft JScriptのランタイムエラー:オブジェクトは、プロパティまたはメソッド「ダイアログ」をサポートしていません

親切に次のように試してみてください。この

答えて

1

で私を助け:

buttons: { 
    Cancel: function() { 
     $('#dialog').dialog('close'); 
    } 
} 
+0

私はこれを試しましたそれは私の友人を働かせていません –

+0

@Evostract、これを試したときにいくつかのエラーが出ましたか? –

+0

はい私は同じエラーを受けていると言ってもエラーを言及している –

0

からの戻り値を設定してみてくださいこのような変数へのダイアログ:

var dialogRef; 

$(function() { 
    dialogRef = $('#dialog').dialog({ 
     autoOpen: true, 
     width: 700, 
     resizable: false, 
     modal: false, 
     buttons: {Cancel: function() { 
       $(this).dialog("close"); 
      } 
     }, 
     position: 'top', 
     closeOnEscape: true 
    }); 

    $("#innerButton").on("click", function() { 
     dialogRef.dialog("close"); 
    }); 
}); 

Working jsFiddle

関連する問題