2011-09-17 6 views

cevap

6
private string TryGetListName() 
{ 
    if (string.IsNullOrEmpty(this.ListName)) { 
     string[] path = this.Page.Request.Url.AbsolutePath.Trim('/').Split('/'); 
     string listName = string.Empty; 
     for (int i = 0; i <= path.Length - 1; i++) { 
      if (path[i].ToLower() == "lists") { 
       if (i < path.Length - 1) { 
        listName = path[i + 1]; 
       } 
       break; 
      } 
     } 
     return listName; 
    } else { 
     return this.ListName; 
    } 
} 

iyi şanslar O kazma biraz aldı, ama sonunda cevabını buldu. Aşağıdaki listeyi kullanarak Javascript'te yer alan listenin kimliğini alabilirsiniz:

//Get the Id of the list 
var listId = SP.ListOperation.Selection.getSelectedList(); 
+0

nolu querystring ile aktarılmasının daha anlamlı olduğunu, paylaştığınız için teşekkürler! –

0

Sen bu

VB.NET

Private Function TryGetListName() As String 
    If String.IsNullOrEmpty(Me.ListName) Then 
     Dim path() As String = Me.Page.Request.Url.AbsolutePath.Trim("/"c).Split("/"c) 
     Dim listName As String = String.Empty 
     For i As Integer = 0 To path.Length - 1 
      If path(i).ToLower = "lists" Then 
       If i < path.Length - 1 Then 
        listName = path(i + 1) 
       End If 
       Exit For 
      End If 
     Next 
     Return listName 
    Else 
     Return Me.ListName 
    End If 
End Function 

C# gibi bir şey kullanabilirsiniz url ayrıştırmak için SPContext sınıfının

SPList list = SPContext.Current.List; 
string listTitle = list.Title; 

http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spcontext.aspx

yılında bulacaksınız

+0

Cevabınız için teşekkürler, ancak bunu Javascript ile yapmam gerekiyor. Orijinal yazımda açıkça belirtmediğim için gerçekten üzgünüm! –

+0

Hmm, javascript'i sunan bir codebehind sayfasının olması daha iyi bir yol olacaktır. Eğer js ile yapmak istiyorsanız, var url = window.location; var urlparts = url.split ('/'); –

+0

Bunun mümkün olduğunu düşünmüyorum. Özel eylem javascript'im, uygulama sayfam için bir querystring oluşturup SP Modal diyaloğu ile açıyor. Uygulama sayfasındaki kodun bir liste sayfasında olmadığından liste ismine erişmek için SPContext'i kullanabileceğini sanmıyorum. Ayrıca liste isminin –

İlgili konular