如何在jquery中设置另一个视图的正文内容

时间:2016-02-22 02:26:59

标签: javascript c# jquery html asp.net-mvc

我有一个包含2个视图的C#MVC项目设置。我的方案如下:

View1有一个链接。单击该链接应使用特定文本填充View2的内容。如何使用jQuery在View1中设置View2.cshtml的主体?

我尝试过这样的事情但没有任何反应。

$("#link").click(function () {
  string result = "Blah blah";
  $("/Home/RawData.cshtml").html(result);                                                
});

RawData视图为空:

@{
    ViewBag.Title = "RawData";
}
<body>    
    <!-- This will be populated dynamically -->
</body>

RawData控制器:

public ActionResult RawData()
{
    return View();
}

2 个答案:

答案 0 :(得分:0)

我认为您可以使用iframe完成所需的操作。只需在view1的click事件上设置iframe的源代码,然后按照@stephen_muecke的建议将字符串作为查询字符串传递。

我的意思是:

$('#iframe_i').attr('src', "/Home/RawData/?text="+$("#myTextBox").val())

答案 1 :(得分:0)

您需要将RawData Action从ActionResult更改为PartialViewResult:

public PartialViewResult RawData(){
    return PartialView("View2Url");
}

然后在JS中你可以使用ajax并执行以下操作:

$('#link').click(function(){
    $.get('/Home/RawData', {}, function(data){
        $('body').html(data);
    });
});