내가 생각할 수있는 세 가지 해결책이 있습니다. 첫 번째, Dave가 제안한 ClientID를 사용하여 서버에서 자바 스크립트를 삽입하면 작동하지만 실제로 지저분 해집니다. 나는 잠시 동안 이것을했지만 서버 측과 클라이언트 측의 긴밀한 결합이 문제를 일으킨다.
두 번째 방법은 css 클래스와 같은 엔티티를 식별하는 다른 방법을 제공하는 것입니다. 이것은 첫 번째 옵션보다 낫지 만 직설적 인 클래스 정의를 많이 남겨 둡니다.
내가 선호하는 솔루션은 선택기 엔진이있는 jQuery와 같은 자바 스크립트 프레임 워크를 사용하는 것입니다. 그렇게하면, 영리한 선택과 DOM 탐색을 통해 UniqueID 쓰레기를 해결할 수 있습니다.
myControl이라는 컨트롤이 있다고 가정 해 보겠습니다. ASP.Net은 거대한 네임 스페이스를 생성하기 때문에 렌더링 전에 id 충돌이 발생하지 않습니다. myControl으로 끝나는 id를 가진 모든 객체를 선택하는 $ ('[id $ = myControl]')을 수행하여 모든 myControl을 선택할 수 있습니다. 아마도 다른 프레임 워크에서 이와 유사한 방법이있을 수 있습니다. 그러나 예를 들기에 익숙하지는 않습니다.