我使用MVC C#和jQuery一起。
我在有多个选项卡的一个相当大的页面的局部视图。
在复选框的点击,我想更新中的形式局部视图。 我所获得,而不是仅仅是局部视图
这是我在jQuery代码:
$('#activelist,#inactivelist').change(function () {
var status = 'inactive';
window.location.href = '@Url.Action("Skits","KitSection")' + '?id=' + id+ '&status=' + status;
});
我如何能更新的我会怎样做对它的调用而言表单中的局部视图任何想法?
下面是PartialView代码
return PartialView(Kits);
如前所述,我所看到的仅仅是显示的局部视图,而不是整个表格。
window.location.href
将刷新整个页面。 您需要重新加载网页的某些部分没有完整的重新加载。 我们可以使用jQuery Ajax来做到这一点。 让我们来看看什么jQuery选择,你可以用它来获得Partialview。
例如,假设你的HTML标记是这样的在主表格(图)
<div>
<p>Some content</p>
<div id="myPartialViewContainer">
@Html.Partial("_FeaturedProduct")
</div>
<div>Some other content</div>
</div>
和这里的DIV
与ID
myPartialViewContainer
是保持的内容的容器的div partial view
。所以我们将简单地重新加载的所述内容使用jQuery DIV 负载方法
$(function(){
$('#activelist,#inactivelist').change(function () {
var id="someval";
var status = 'inactive';
$("#myPartialViewContainer").load('@Url.Action("Skits","KitSection")' + '?id=' + id+ '&status=' + status)
});
});
您将会重定向用户通过window.location.href属性,您部分的URL,因此只显示该部分。
而应该做一个AJAX调用部分检索它的HTML,然后使用类似的方法.append将其添加到任何容器元素,你希望它被添加到。
编辑:.load()jQuery的AJAX方法对于这个特定的情况其实更好。