Bascially,想要把代碼設置活動選項卡上的服務器端,而不是用JavaScript。下面有一個SharePoint的例子標籤,多視點:
<asp:Menu ID="menu1" runat="server" Orientation="Horizontal" StaticEnableDefaultPopOutImage="False" >
<Items>
<asp:MenuItem Text="Tab 1" Value="0"></asp:MenuItem>
<asp:MenuItem Text="Tab 2" Value="1"></asp:MenuItem>
</Items>
</asp:Menu>
<asp:MultiView ID="Multiview1" runat="server" ActiveViewIndex="0" >
<asp:View ID="view1" runat="server">
<div>STUFF</div>
</asp:View>
<asp:View ID="view2" runat="server">
<div>STUFF</div>
</asp:View>
</asp:MultiView>
然後你需要寫一個函數服務器端處理選項卡點擊:
Private Sub menu1_MenuItemClick(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.MenuEventArgs) Handles menu1.MenuItemClick
Try
If Multiview1.ActiveViewIndex <> Int32.Parse(e.Item.Value) Then
Select Case Multiview1.ActiveViewIndex
Case PageView.Tab1
Multiview1.ActiveViewIndex = Int32.Parse(e.Item.Value)
Case PageView.Tab2
Multiview1.ActiveViewIndex = Int32.Parse(e.Item.Value)
End Select
End If
ActiveView(e.Item.Value)
Catch ex As Exception
Throw ex
End Try
End Sub
以及處理活動視圖切換的功能:
Public Sub ActiveView(ByVal value As Integer)
Try
Multiview1.ActiveViewIndex = value
Catch ex As Exception
Throw ex
End Try
End Sub
這是全部用VB編寫的。所以如果您有任何問題,我很樂意回答。我希望這能讓你走上正軌。爲了清楚起見,我沒有添加任何與頁面驗證相關的內容。
謝謝。當你說「你需要編寫一個函數服務器端...」時,我在哪裏寫這個?我如何在SP表單後面編碼? – James 2012-07-20 23:14:30
這個例子假設你使用SharePoint作爲asp.net網站的包裝器。基本上,您可以編寫您的網頁以在SharePoint內工作,並使用應用程序吐出的dll以及aspx文件來創建您的SharePoint站點。 – ORION 2012-09-07 12:14:45