2010-10-28 35 views
1

給定一個文本框客戶端IDASP.net在乘坐表單元素

<input name="ctl00$mainContent$txtAddress1" type="text" id="ctl00_mainContent_txtAddress1" /> 

我不認爲瀏覽器自動完成功能,認識到這一點的名稱/ ID作爲可以自動填充的字段,它們不是標準的可識別名稱。

有什麼方法可以覆蓋客戶端ID,以便自動完成有更好的機會識別它們嗎?

回答

4

2積分與此。

1)ASP.Net 4.0中引入了「覆蓋名稱」功能,對於任何屬性您都可以選擇硬編碼名稱而不是動態名稱。因爲你不想讓2個對象共享一個名字,所以你需要小心。

2)ASP.Net 2.0及以上版本(可能已在v1.0中)在控件上有一個名爲「AutoCompleteType」的屬性,它向瀏覽器提供了有關框中需要的信息的提示。

1

假設您使用的是Asp.net 4.0,並且您知道DJIDave提到的幾點,則可以在控件上使用ClientIDMode屬性,並將其設置爲「靜態」。然後,你在Asp.Net中的Id字段中指定的內容將被引入到你的最終標記中,並且不會因爲Asp.Net而被「破壞」(因爲想要更好的單詞)。