【问题标题】:AutoPostback from Html.Listbox in ASP.NET MVC?从 ASP.NET MVC 中的 Html.Listbox 自动回发?
【发布时间】:2010-02-25 09:19:39
【问题描述】:

现在,我可能只是非常厚,但我正在努力寻找如何在 ASP.NET MVC 1 中使用 Html.Listbox 进行自动回发。

如果我将 ListBox1 中的值更改为z 然后我希望 ListBox2 的值根据该信息进行更改。

信息将从数据库中提取。

我知道这在标准 ASP.NET 中很容易,但我看不到使用 MVC 的明显方法。

有人能指出我正确的方向吗?

提前感谢您的帮助。

【问题讨论】:

    标签: asp.net-mvc html-helper autopostback


    【解决方案1】:

    postback 和asp mvc 不是真的兼容,你应该看看用jquery,很粗略的像...

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

    MVC 在设计上去掉了大部分的 asp.net 抽象,如 viewstate 和 postback,它的层次要低得多。

    【讨论】:

    • 问题是,我不是返回部分视图后,我只是想改变第二个框中的数据。
    • 第二个框中的数据是 html,应该使用我想象的部分视图呈现,您可以返回 json/xml 并在客户端呈现它,或者您可以根据需要返回一个字符串,这取决于你。
    【解决方案2】:

    在 MVC 中,回发模型与在经典 ASP.NET 中不同。要做你想做的事,最好的解决方案是使用 javascript 并将其添加到列表框上的 onchange-attribute 和类似 jquery.ajax 的东西来向服务器发出请求。您还可以让 javascript 在表单上发帖,然后再次返回整个页面。

    【讨论】:

      猜你喜欢
      • 2015-10-14
      • 1970-01-01
      • 2017-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-03
      • 1970-01-01
      相关资源
      最近更新 更多