2014-01-10 24 views
0

我的Sharepoint生成的網頁中有不同的地方,其中元素ID由Sharepoint爲前綴「ct100」分配值。依靠Sharepoint「ct100」標識符有多安全?

在我的javascript中引用這些ID有多安全? 它們有多靜態? 他們很可能因爲任何原因而改變? 是否有任何文檔討論它們如何產生並回答上述問題?

感謝, 喬治

回答

0

基於研究,最安全的方法是使用css和jquery來識別和操縱「ct001」元素。我試過這種方法,它似乎工作正常。

1

「安全」是相對的這裏,向不同的具體頁面和控件上的參與。

個人ID的樣子ctXYZ由父ASP.Net Naming Container當控制尚未明確分配一個ID自動生成的 - 也就是說,該ID是自動生成的類似CT001,ct002等,確保不創建重複。

最終的客戶端ID - 在HTML中被分配爲id屬性 - 由連接控件的所有ID和所有具有下劃線的祖先組成;因此單個客戶端ID的穩定性會受到多個控件的影響。

只有當控制樹總是以相同的方式重新創建時,生成的客戶端ID通常才能保證穩定 - 這在許多情況下都適用,但並非絕對。動態添加或刪除控件可輕鬆打破這一假設。


ASP.Net 4(?或4.5)推出了不同的ID模式 - 主要是「可預見的」,見命名容器鏈接 - 但我不認爲SharePoint使用這一新功能的任何地方;它絕對不用於包含ctXYZ組件的ID。

+0

感謝您的解釋 - 我從來不知道的事情。 – gcarterIT