easyui accordion内的链接无法绑定单击事件

sqlanywhere10 2013-08-08 11:37:29


菜单生成代码如下
//绑定前台菜单栏
function BindMenuDataGroupType() {
//根据异步读取发送过来的Json字符串
$.getJSON("/Home/LoadMenuData", {}, function (data) {
//实现在菜单拦中的显示,遍历节点集合
for (var i = 0; i < data.length; i++) {
var groupInfo = data[i]; //拿到组的信息

//拿到内容的信息,每个菜单项构造成一个p标签
var strMenuItemHTMl = "";
for (var j = 0; j < groupInfo.MenuItems.length; j++) {
var menuItem = groupInfo.MenuItems[j];
strMenuItemHTMl += '<p><a href="javascript:void(0)" src="' + menuItem.Url + '" class="menuLink">' + menuItem.MenuName + '</a></p>';
}

//EasyUI添加节点
$("#aa").accordion('add', {
title: groupInfo.GroupName,
content: strMenuItemHTMl,
selected:false,
});
//$("#aa").accordion('select', groupInfo.GroupName);
}

});
}


生成左边的菜单,这个是没问题的
然后我想给每个连接绑定click事件,代码如下
//实现用户单击导航栏跳转页面的方法
function BindMenuClickHrefEvent() {
$(".menuLink").click(function () {
//获取按钮里面的Src属性
var src = $(this).attr("src");
alert(src);
});
}


页面调用
 $(function () {
//在前台自动显示菜单的信息根据用户的信息
BindMenuDataGroupType();

//绑定菜单单击事件
BindMenuClickHrefEvent();


});


调试发现加载页面时会进去到BindMenuClickHrefEvent();事件,
但打开页面后 点击连接,却没有执行单击事件
绑定事件变无效了,不知道什么原因
一天了,查不出问题,来求救

...全文
345 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
大侠们 怎么解决的!!!
酒醉vs梦醒 2014-02-24
  • 打赏
  • 举报
回复
for (var j = 0; j < groupInfo.MenuItems.length; j++) { var menuItem = groupInfo.MenuItems[j]; strMenuItemHTMl += '<p><a href="javascript:void(0)" src="' + menuItem.Url + '" class="menuLink">' + menuItem.MenuName + '</a></p>'; } 的groupInfo.MenuItems有值吗?怎么得到的?、
arnold1226 2013-08-20
  • 打赏
  • 举报
回复
引用 楼主 sqlanywhere10 的回复:
菜单生成代码如下
//绑定前台菜单栏
        function BindMenuDataGroupType() {
            //根据异步读取发送过来的Json字符串
            $.getJSON("/Home/LoadMenuData", {}, function (data) {
                //实现在菜单拦中的显示,遍历节点集合
                for (var i = 0; i < data.length; i++) {
                    var groupInfo = data[i]; //拿到组的信息

                    //拿到内容的信息,每个菜单项构造成一个p标签
                    var strMenuItemHTMl = "";
                    for (var j = 0; j < groupInfo.MenuItems.length; j++) {
                        var menuItem = groupInfo.MenuItems[j];
                        strMenuItemHTMl += '<p><a href="javascript:void(0)" src="' + menuItem.Url + '" class="menuLink">' + menuItem.MenuName + '</a></p>';
                    }
                    
                    //EasyUI添加节点
                    $("#aa").accordion('add', {
                        title: groupInfo.GroupName,
                        content: strMenuItemHTMl,
                        selected:false,
                    });
                    //$("#aa").accordion('select', groupInfo.GroupName);
                }
               
            });
        }
生成左边的菜单,这个是没问题的 然后我想给每个连接绑定click事件,代码如下
//实现用户单击导航栏跳转页面的方法
        function BindMenuClickHrefEvent() {
            $(".menuLink").click(function () {
                //获取按钮里面的Src属性
                var src = $(this).attr("src");
                alert(src);
            });
        }
页面调用
 $(function () {
            //在前台自动显示菜单的信息根据用户的信息
            BindMenuDataGroupType();

            //绑定菜单单击事件
            BindMenuClickHrefEvent();


        });
调试发现加载页面时会进去到BindMenuClickHrefEvent();事件, 但打开页面后 点击连接,却没有执行单击事件 绑定事件变无效了,不知道什么原因 一天了,查不出问题,来求救
这个我试过了。。。。&()..live() 未定义。。。。。。。 出来这个错。。。。
fzfei2 2013-08-08
  • 打赏
  • 举报
回复
$(".menuLink").click(function () { //获取按钮里面的Src属性 var src = $(this).attr("src"); alert(src); }); 改成 $(".menuLink").live("click",function () { //获取按钮里面的Src属性 var src = $(this).attr("src"); alert(src); });

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧