我试图从asp调用jquery脚本:MenuItem NavigateUrl

时间:2014-06-23 17:34:39

标签: javascript jquery asp.net

我的aspx前端代码的片段

asp:MenuItem NavigateUrl = "~/Scripts/toggleit.js" 

toggleit.js:

$(document).ready(function () {

   $('#Div52').toggle();

});

当我运行menuitem时,它会显示几个窗口,询问我运行此脚本是否安全? (不知道为什么它不会出现在我的项目中......)

接下来它发出了一个时髦的错误

'document' is undefined line 1

如果无法运行jquery脚本,为什么让NavigateUrl方法能够运行“Scripts”?

1 个答案:

答案 0 :(得分:0)

通常你在锚标签中使用javascript:myFunctionName();,但我不认为它可以在ASP菜单项中使用。我有一个不太优雅的解决方案。

将导航菜单的点击事件连接到此功能

public void NavigationMenu_Click(object sender, MenuEventArgs e)
{
    if (e.Item.Value == "SelfReport")
    {
        // call RegisterClientStartupScript(); http://msdn.microsoft.com/en-us/library/z9h4dk8y(v=vs.110).aspx
    }
}

会有回发。

更好的解决方案是根据菜单项的标题将事件挂钩到jQuery端。但我会把这个答案留给jQuery比我更好的人。