javascript - MVC4如何在javascript中将值传递给Html.Partial?

标签 javascript jquery asp.net-mvc asp.net-mvc-4

MVC4,单击下拉项时,JavaScript 函数在 View 的“脚本”部分中调用。函数对 Controller Action 进行ajax调用,返回Json数据。我需要将一些返回值传递给 Html.Partial() 以在 .如何做到这一点? Html.Partial() 的这些值“在当前上下文中不存在”。

查看:我的 View

<div>@Html.DropDownList("listId", list, new { onChange=showText() }</div>
<div id="divMyText" ></div>

@section scripts{

function showText()
{
    var val1 = 1;

    $.ajax({
       type:"POST",
       url: "/Home/MyAction",
       data: {parm1:val1},
       success: function (result){
          renderMyView(result.id);
       }
    });
}

function renderMyView(id)
{
   $('#divMyText').html('@Html.Partial("MyView", new MyViewModel (id))');  // id here is Not 'visible' for MyViewModel. 
}

}

Controller 操作:

public ActionResult MyAction(int parm1)
{
   .......
   return Json (myObject);
}

public ActionResult MyView (int id)
{
    MyViewModel model = new MyViewModel(id);
    return View(model);
}

如何在 Html.Partial 语句中将 id 值传递给 MyViewModel ? 谢谢

最佳答案

您需要在 Controller 端将它们组合起来。将我的操作更改为

public PartialViewResult MyAction (int id)
{
    MyViewModel model = new MyViewModel(id);
    return PartialView("PartialName", model);
}    

然后在您的脚本中而不是调用渲染 View 函数

$('#divMyText').html(result);

这将获取返回的带有绑定(bind)模型的部分 View 并将其放入 div 中

关于javascript - MVC4如何在javascript中将值传递给Html.Partial?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26316980/

相关文章:

android - Mobiscroll 的问题 - orientationchange 和 access address bar 会导致一些移动浏览器崩溃

asp.net-mvc - 这是 ASP.NET MVC 中异常处理的正确方法吗

php - 在这段 JavaScript 代码中包含变量的正确语法是什么?

javascript - 使用 React 和 JSX 添加 Assets 路径变量的最佳方式?

jquery - Rails 和 JQuery - 无法禁用链接默认操作

php - 如何在jquery中迭代另一个数组中的数组数据

c# - ASP.NET MVC 5 在回发时修剪字符串?

javascript - 循环进入 Javascript 对象并显示在表中

javascript - 带有 overflow hidden 的水平文本 slider

php - jQuery find() 在 Google Chrome 中返回空字符串