2010-02-25 48 views
0

現在,我可能只是非常厚實,但我很努力地找到如何使用ASP.NET MVC 1中的Html.Listbox做autopostback。ASP.NET MVC中的Html.Listbox的AutoPostback?

我想要實現的只是一個簡單的如果ListBox1的值是x那麼ListBox2中的值是y,如果我將ListBox1中的值更改爲z那麼我希望ListBox2的值根據該信息進行更改。

該信息將從數據庫中提取。我知道這很容易在標準的ASP.NET,但我看不到一個明顯的方式來做到這一點與MVC。

難道有人指着我正確的方向嗎?

在此先感謝您的幫助。

回答

3

回傳和ASP MVC是不是真的compatable,你應該看看使用jQuery,很不客氣地像...

$(function() { 
    $('#box1').change(function() { 
      $.post('/controller/actionThatReturnsAPartialView', 
        { selectedID : $('box1').val()}, 
        function(data){ 
         $('#box2').html(data); 
        } 
      ); 
    }); 
}); 

MVC,通過設計,削減了大部分的asp.net抽象的視圖狀態一樣回傳和,它低得多。

+0

問題是,我不是在返回部分視圖後,我只是想更改第二個框中的數據。 – LiamGu 2010-02-25 12:00:43

+0

第二個框中的數據是html,應該使用局部視圖呈現,我會想象,您可以返回json/xml並將其呈現在客戶端,或者如果您喜歡,可以返回一個字符串,這取決於您。 – 2010-02-25 20:02:45

0

在MVC中,您不像傳統ASP.NET中那樣具有相同的回發模型。要做你想做的事,最好的解決方案是使用javascript並將其添加到列表框上的onchange-attribute以及像jquery.ajax之類的東西來向服務器發出請求。你也可以讓javascript在表單上做一個帖子,然後再返回整個頁面。

相關問題