webForumDet fria alternativet

Webcontrollers ID ändras inte

.NET

4 svar · 411 visningar · startad av freguz

Medlem sedan feb. 2005280 inlägg
Frågan#1

Normalt görs ju ID om från ID="City" till "ctl100_City" eller nåt sånt automatgenererat.

Men nu har jag ett projekt där alla webforms webcontrols behåller sina ID värden, dvs

<asp:DropDownList Runat="server" ID="ddl">
....
</asp:DropDownList>

...heter fortfarande ddl när man kollar klientkoden.

Har försökt hitta config settings som skulle kunna påverka detta beteende men jag går bet.

Nån som stött på detta fenomen?

Tips emottages tacksamt

Medlem sedan aug. 20003 575 inlägg
#2

hmm, detta är en vild chansning, men kan det ha något med om man väljer publicera webbapplikationen eller om man bara tar mappen med utvecklingsfiler och lägger upp?

Medlem sedan dec. 19996 721 inlägg
#3

Det är inget konstigt. En kontroll namnges alltid med sig eget namn plus den eventuella namingcontainer (t.ex. en repeater) som den ligger i. Om den får behålla sitt namn så ligger den alltså inte i någon namingcontainer. "ctl00" kommer oftast från en MasterPage.

Medlem sedan jan. 2007152 inlägg
#4

Om du exempelvis genererar ett javascript så ska du av den anledningen använda kontrollnamn.ClientID för att få kontrollens verkliga id... kan vara bra att känna till!

Medlem sedan feb. 2005280 inlägg
#5

ok puh det var ju skönt. Trodde det alltid blev kryptiska IDn bara man hade en form med runat=server, men ack så fel, toppen :)

252 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)