MVC - 处理页面上的模型和事件

时间:2011-06-17 19:46:14

标签: asp.net-mvc-3 jquery

我有一个关于如何构建MVC页面的基本问题。

假设这是我的模特:

public class MyModel
{
   int ProductId
   List<ParameterTable> ParameterTables
   ...
   [other properties]
   ...
}

ProductId最初没有值,但是当从DropDownList中选择其值时,它将触发一个事件,该事件检索与该产品关联的List项。

我的问题是当我执行此AJAX调用以获取参数表时我不确定如何处理响应。我只看过人们通过jquery手动将这些数据插入页面的例子。这意味着处理在视图中显示数据(第一次加载页面)和jquery(无论何时更改)。

我想知道是否有办法以某种方式传回一个将我的List的返回值绑定到我的页面的排序模型,而无需指定如何处理每个值。

我是否必须更改ProductId DropDownList触发一个ActionResult,它会重新加载整个页面而不是JsonResult?

1 个答案:

答案 0 :(得分:2)

您可以使用ajax调用返回部分视图。

控制器操作:

public ActionResult Filter(int productId) {
    var product = _repository.Find(productId);
    if (Request.IsAjaxRequest())
    {
         return PartialView("_Product", product);
    }
    else
    {
         return View(product);
    }
}