剃须刀里有foreach
:
<ul>
@foreach (var node in Model)
{
var par = node.Id;
<li onclick="GetSubMenu(@node.Id)" id="@node.Id">
@node.Title
</li>
}
</ul>
在onclick中我在:
中调用了方法 function GetSubMenu(parentId) {
debugger;
$.ajax({
type: "Get",
url: "/Menu/GetSubMenu",
data: { pageNumber: parentId },
contentType: "application/json; charset=utf-8",
dataType: "json",
}).done(function (result) {
});
}
但是当我点击<li>
时,GetSubMenu
无法触发,问题是什么?
答案 0 :(得分:0)
尝试使用数据属性。
<ul>
@foreach (var node in Model)
{
<li id="nodeID_"+@node.Id data-nodeid=@node.Id onclick="GetSubMenu(this)" >
@node.Title
</li>
}
</ul>
并以javascript格式获取数据。
function GetSubMenu(e) {
var parentId = obj.getAttribute('data-nodeid');
$.ajax({
type: "Get",
url: "/Menu/GetSubMenu",
data: { pageNumber: parentId },
contentType: "application/json; charset=utf-8",
dataType: "json",
}).done(function (result) {
});
}
您也可以使用数据集
function GetSubMenu(e) {
var parentId = e.dataset.nodeid;
$.ajax({
type: "Get",
url: "/Menu/GetSubMenu",
data: { pageNumber: parentId },
contentType: "application/json; charset=utf-8",
dataType: "json",
}).done(function (result) {
});
}