2010-02-03 71 views
0

我有一個asp.net mvc視圖上的鏈接,它打開一個模式彈出窗口,其中第二個MVC視圖呈現。模式對話框/彈出窗口ASP.NET MVC回發

Modal彈出窗口中的視圖暴露了幾個觸發回發的功能。回發會激發正確的控制器方法,但是當我返回更新後的視圖時,視圖本身就會呈現,而不是在模態彈出框中呈現。

這就是關閉彈出窗口,我不再是第一個「父頁面」,而是加載模式彈出窗口中的視圖的獨立網址。

我想實現的是在模式彈出窗口的視圖中的回傳將更新的視圖載入模態窗口?

任何人都可以幫忙嗎?

我見過部分視圖和ajax調用的引用,但不知道它們如何最適合?

感謝, 格里夫

+0

這裏整齊[文章](http://yassershaikh.com/how-to-create-a-modal-popup-in-asp-net-mvc -3-using-jquery /)... – Yasser 2012-09-26 11:52:55

回答

0

首先,MVC不回傳,它只是做普通的提交。可能看起來像語義,但有一個根本的區別。

要回答你的問題,如果你想更新模態窗口,你必須去ajax路線。你想要做的是通過ajax發送請求並接收響應,然後更新模態窗口內的一些div。

您還可以通過引用您傳遞到視圖中的模型的某些屬性來執行hack,以便基於模型可以渲染正確的局部視圖,然後動態觸發模式窗口觸發器視圖。

+0

在這裏意外地輸入了代碼 – 2010-02-03 18:37:10

0

感謝您的回覆......是的,您的權利當然我應該指定提交而不是回發!我是一個轉換的asp.net頭,所以仍然陷入這種思維模式!

我想我得到的想法,只是不知道如何去做,具體如何設置一個div的內容從ajax請求?

試圖東西liek這樣的:

var URL = '<%= ResolveUrl("~") %>/ImagePicker/Index/0/283'; 
     $.get(URL, function(data) { 
      $("#Result").html(data); 
     }); 

<div id="Result"></div> 
+0

你應該把它作爲註釋留給我的答案:)通常在StackOverflow上,答案應該只是答案。 無論如何,在你的例子中,在行動中你在返回什麼? – Wil 2010-02-04 12:59:18