【发布时间】:2017-04-12 11:41:57
【问题描述】:
我有带有服务器端点击事件的 asp.net 菜单。使用每个菜单项的 __doPostBack 事件正确呈现菜单。 但是,当我从 javascript 覆盖其中一个菜单项以传递不同的参数时,它会触发服务器事件,但不会触发 Protected Sub menuBar_MenuItemClick(sender As Object, e As MenuEventArgs) 处理 menuBar.MenuItemClick 事件。
菜单项呈现像
<a class="menuBar_1 staticMenuItem menuBar_3"
style="font-size: 1em;" href="javascript:__doPostBack('ctl00$ucPageHeader1$menuBar','6')">
Link 1</a>
<a class="menuBar_1 staticMenuItem menuBar_4"
style="font-size: 1em;" href="javascript:__doPostBack('ctl00$ucPageHeader1$menuBar','7')">
Link 2</a>
在javascript中覆盖如下
$(document).ready(function () {
$(".menuBar_1 staticMenuItem menuBar_4").on( "click", function() {
handleChange();
});
});
function function handleChange(){
__doPostBack("ctl00$ucPageHeader1$menuBar", "74");
}
以某种方式单击链接 1 能够触发 menuBar_MenuItemClick 但不能触发链接 2。
对于这两个链接单击我都会在即时窗口中得到 ?request("__EVENTTARGET") = "ctl00$ucPageHeader1$menuBar"。
有什么猜测吗?
【问题讨论】:
标签: asp.net menu webforms server-side server-side-scripting