2013-10-21 42 views
0

調用的jQuery我發現下面的代碼在StackOverflow的舊消息之一:從ASP.NET的GridView

$("#<%=GridView1.ClientID%> tr").click(function(){ 
    alert("Row clicked"); 
}); 

上面的代碼應該調用報警時,用戶點擊一個GridView的一行。我不明白的是如何定義(在我的GridView中)上面的代碼中稱爲「ClientID」的內容。什麼是「ClientID」?

+1

您不需要定義ClientID。每個控件都有一個服務器端ID和一個ClientID。你定義了服務器端的ID,ClientID由asp.net的標記引擎定義。例如定義了一個帶有服務器端ID text1的TextBox控件。我們使用這個ID來訪問代碼在文件後面的屬性f文本1.當這個控件將呈現給html時,它將會有一個clientID,它將由asp.net標記引擎生成。 – Christos

+0

非常感謝您的解釋。 我看到我現在複製的代碼正常工作。但是如果我只想在用戶點擊某個特定列時調用Alert,該怎麼辦? 另外,請允許我提出一個普遍的問題。如何爲兩位或更多回答我問題的人輸入評論?看起來,我可以將Commnet添加到一個,然後另一個。我錯過了什麼? 再次感謝您。 – Hidalgo

+0

ClientID屬性是控件的自動生成標識。 –

回答

1

此代碼<%=GridView1.ClientID%>將在服務器上運行,並會最終呈現爲網格視圖的ID,所以在頁面上,你會最終看到大概這

$("#GridView1 tr").click(function(){ 
    alert("Row clicked"); 
}); 

ClientID給出了最終的ID的GridView在html頁面上使用。

+0

這也取決於他們是否使用母版頁。然後,ASP將添加一個'ContentPlaceHolderID'作爲前綴到'GridView' ID –

+0

@NikitaSilverstruk當然,我只是給出一個想法將呈現的id。 – Aristos