调用jquery函数的问题
我有以下 jQuery 函数,我尝试通过发送我的 MenuId
作为参数来调用 OnMenuClick
函数,但我的 OnMenuClick
事件没有给出所需的输出,他们有其他方法来实现这一目标吗?
function CreateMenus(results) {
for (var i = 0; i < results.length; i++) {
$("<div class='Menu'>" + results[i].Text + "</div>")
.click({ MenuId: results[i].MenuId }, OnMenuClick)
.appendTo("#accordionContainer");
}
}
这是我的 OnMenuClick
函数
function OnMenuClick(event)
{
$("div[id ^= 'menuItemGroup']").slideUp(500);
$.ajax(
{
type: "POST",
url: "MenuItems.asmx/GetMenuItems",
data: '{"menuId":"' + event.data.MenuId + '"}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(items) {
$(event.target).children().remove();
var html = "<div id='menuItemGroup" + event.data.MenuId + "' style='display:none'>";
for (var j = 0; j < items.length; j++) {
html += "<div class='MenuItem'> <a href='" + items[j].NavigateUrl + "'>" +
items[j].Text + "</a></div>";
}
html += "</div>";
$(event.target).append(html);
$("#menuItemGroup" + event.data.MenuId).slideDown(500);
},
error: function(err) {
alert(err.status + " - " + err.statusText);
}
}
)
}
如果将 MenuId
值 1
传递给 OnClick
,这将是我的示例 XML 输出
<?xml version="1.0" encoding="utf-8" ?>
<ArrayOfMenuItem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.org/">
<MenuItem>
<MenuId>1</MenuId>
<MenuItemId>1</MenuItemId>
<Text>Books</Text>
<NavigateUrl>google.com</NavigateUrl>
</MenuItem>
<MenuItem>
<MenuId>1</MenuId>
<MenuItemId>2</MenuItemId>
<Text>Cd</Text>
<NavigateUrl>yahoo.com</NavigateUrl>
</MenuItem>
</ArrayOfMenuItem>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
它可能不是解决方案,但您可以尝试
首先将 div 附加到容器,然后进行绑定
HTH...
it may not be the solution but you can try
first append the div to the container and then do the binding
HTH...