NavigateUrl未在MenuItem中调用javascript
我似乎不明白为什么菜单项没有调用asp.net菜单中的javascript功能。当我单击菜单项时,菜单关闭,不再执行任何操作。我的部分代码如下所示:NavigateUrl未在MenuItem中调用javascript,javascript,asp.net,menu,menuitem,Javascript,Asp.net,Menu,Menuitem,我似乎不明白为什么菜单项没有调用asp.net菜单中的javascript功能。当我单击菜单项时,菜单关闭,不再执行任何操作。我的部分代码如下所示: 更新1 我正要转储浏览器输出,进一步的测试显示,当我注释掉正在单击的元素(打开菜单的元素)的onBlur事件时,javascript按预期工作 当焦点从元素移开时,onBlur事件中的代码隐藏弹出菜单。第二次单击菜单项本身触发onBlur事件,该事件隐藏菜单。似乎由于菜单是隐藏的,与之关联的javascript不会被调用。浏览器中的输出是什
更新1
我正要转储浏览器输出,进一步的测试显示,当我注释掉正在单击的元素(打开菜单的元素)的onBlur事件时,javascript按预期工作
当焦点从元素移开时,onBlur事件中的代码隐藏弹出菜单。第二次单击菜单项本身触发onBlur事件,该事件隐藏菜单。似乎由于菜单是隐藏的,与之关联的javascript不会被调用。浏览器中的输出是什么样子的? 使用viewsource、firebug或IE调试器查看 使用onclick可以更好地处理此问题:
onclick='alert("test");return false;'
我想你应该试试JQuery
<script language="javascript" type="text/javascript">
$(function () {
$(".Menu a").each(function (index) {
$(this).click(function () {
alert(index);
return false;
});
});
});
</script>
$(函数(){
$(“.Menu a”)。每个(函数(索引){
$(此)。单击(函数(){
警报(索引);
返回false;
});
});
});
是的,输出源在浏览器中是什么样子的?我认为MenuItem不支持onclick或onclientclick,它会抛出一个错误:发生了一个错误。类型“System.Web.UI.WebControls.MenuItem”没有名为“onclick”的公共属性。
输出是什么样子的?
<script language="javascript" type="text/javascript">
$(function () {
$(".Menu a").each(function (index) {
$(this).click(function () {
alert(index);
return false;
});
});
});
</script>