asp.net 4.0 нам всем поможет и здорово облегчит жизнь, там аж три варианта задания идентификаторов для элементов управления, на все случаи жизни. В том числе и без модификаций.
Да, но вся фишка в том, что к ID привязаться сложно: надо либо включать код ASP.NET в JS $("#<%= txtStreet.ClientID %>"), либо как я предлагаю использовать для этого CSS классы.
здесь вся проблема заключается в том, что при вашем подходе один и тот же css-класс может быть прописан у множества элементов, а значит и получить нужный Вы в некоторых случаях не сможете. При выборе элемента по CSS-классу сразу же проверяйте на то, что его ID заканчивается названием класса.
Я решаю эту проблему, созданием js-объекта соответсвий, в котором можно найти клиентский ID по серверному ID. Этот объект может создаваться автоматически серверным кодом, проходясь по дереву контролов.
ASP.NET: CssClass как альтернатива клиентскому ID