用javascript控制asp:menu跳转页面

来源:互联网 发布:香樟木家具的危害知乎 编辑:程序博客网 时间:2024/04/19 00:53

  最近用到了asp:Menu控件来写一个简单的web页面,想用javascript控制它翻页。用了一天的时间才想明白!太白痴了!

首先asp.Menu的用法我就不多说了,贴出前台代码:

<asp:Menu id="Menu1" Orientation="Horizontal" StaticMenuItemStyle-CssClass="tab" StaticSelectedStyle-CssClass="selectedTab" CssClass="tabs" OnMenuItemClick="Menu1_MenuItemClick" runat="server">
         <Items>
          <asp:MenuItem Text="基本信息" Value="0" Selected="true"/>
          <asp:MenuItem Text="修改文章" Value="1"/>
          <asp:MenuItem Text="编写文章" Value="2"/>
         </Items>
        </asp:Menu>
        <asp:MultiView id="MultiView1" ActiveViewIndex="0" runat="server">
        <asp:View ID="View1" runat="server">
            对应"基本信息"的asp:MenuItem
        </asp:View>
        <asp:View ID="View2" runat="server">
            对应"修改文章"的asp:MenuItem
        </asp:View>
        <asp:View ID="View3" runat="server">

            对应"修改文章"的asp:MenuItem
         </asp:View>
</asp:MultiView>

其实在后台控制asp:Menu的翻页很容易添加MenuItemClick事件再写下面的代码:

protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
    {
        int index = Int32.Parse(e.Item.Value);
        MultiView1.ActiveViewIndex = index;

    }

但是我们怎样才能用Javascript在前台控制他的翻页呢?在网上找了一天都没有结果,好像我遇到的问题别人都没有兴趣!

不过就在我要放弃的时候我突然发现在点击MenuItem项触发MenuItemClick事件的时候IE浏览器的左下角却出现了:

__doPostBack('Menu1','0')或__doPostBack('Menu1','1')或__doPostBack('Menu1','2')难道。。。。。。。。

好的贴到前台Function函数里!我哈哈!搞定!

      希望此文有助于遇到同样问题的朋友们!转载请注明出处...谢谢!

 对了要补充的是 我们在后台如果想用代码改变asp:Menu的ActiveViewIndex属性(当然是在MenuItemClick事件之外)就会出现前台被选中的asp:MenuItem和显示的asp:View 不一致的情况,感觉怪怪的。。。