[英]Update partial view by calling MVC4 controller via jquery
我有一個帶有側邊欄菜單的頁面。 在單擊側邊欄菜單時,我展開jstree。 單擊此樹的任何節點后,應重新加載主頁上的部分頁面。 但是,這似乎沒有發生。
Simplified MainPage.html
<body class="claro">
<div id="header">
<div id="logindisplay">
@Html.Partial("_LogOnPartial")
</div>
</div>
<div id="menucontainer2">
@Html.Partial("_SideLayout")
</div>
<div id="main">
@RenderBody()
</div>
</body>
我以jstree視圖的形式創建側邊欄布局(可以正常渲染),並等待其使用以單擊樹節點。 即。
SideBarLayout.html
<div id="divtree">
<ul id="tree">
<li>
Manage Profile
</li>
<li ><a>Settings</a>
<ul>
<li><a>Configuration Settings</a>
<ul>
<li><a>Customer Setup</a></li>
<li><a>Job Setup</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
script type="text/javascript">
$(function () {
$("#divtree").jstree();
$("#divtree").bind(
"select_node.jstree", function (evt, data) {
debugger;
var url = '@Url.Action("Index", "Order", new{ Area = "OrderModule"})'; -----> is this correct way to call the MVC 4 Controller ?
console.log(url);
$.post(url, function (data, status) {
alert("Data: " );
});
}
);
});
</script>
1 .
如您所見,無論單擊樹的哪個節點,我都將創建相同的url
。 一旦我可以在MainPage.html上更新部分視圖,就可以解決這個問題。
2 .
_LogOnPartial可以正常工作,並且能夠正確更新主頁的部分視圖。 它只包含這樣的東西
@Html.ActionLink("Log Off", "LogOff", "Account")
但是我無法操縱jstree更新部分視圖。 誰能用正確的jquery命令幫助我,以調用MVC 4控制器,以便更新我的頁面?
**EDIT**
現在,我可以連接將數據發布到服務器了(我的警報說成功)。 但是仍然沒有呈現我在主頁中的部分視圖
。 正確的Ajax呼叫:
$.ajax({
url: '@Url.Action("Index", "DpcmOrder", new { area = "AmethystWorkestraModule" })',
type: 'POST',
cache: false,
async: false,
data: $('form').serialize(),
success: function (data) {
//your ajax data
alert('success');
$('#main').html(data);
},
error: function (e) {
alert('fail');
console.log(e);
}
});
$.ajax({
url: '/Index/Order',
type: 'GET',
cache: false,
async: false,
data: {Area : "OrderModule"},
success: function (data) {
//your ajax data
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.