2014-01-10 6 views
0

셰어가 "ct100"접두어로 요소 ID 값을 할당 한 웹 페이지가 여러 곳에서 생성됩니다.Sharepoint "ct100"식별자를 사용하는 것이 얼마나 안전합니까?

내 자바 스크립트에서 이러한 ID를 참조하는 것이 안전합니까? 얼마나 정적입니까? 어떤 이유로 든 변경 될 가능성은 얼마나됩니까? generetad에 대해 논의하고 위의 질문에 대답하는 문서가 있습니까?

감사합니다, 조지

답변

0

연구에 따르면 가장 안전한 방법은 css와 jquery를 사용하여 "ct001"요소를 식별하고 조작하는 것입니다. 나는이 방법을 시도해 보았고 정상적으로 작동하는 것으로 보인다.

1

"안전은"여기에 상대적이며 관련된 특정 페이지와 컨트롤에 따라 달라집니다.

ctXYZ과 같은 개별 ID는 ASP.Net Naming Container 부모가 자동으로 생성합니다. 컨트롤에 명시 적으로 ID가 할당되지 않은 경우입니다. 즉, ID가 ct001, ct002 등과 같이 자동 생성되어 생성되지 않도록합니다. 중복.

HTML의 id 속성으로 할당 된 최종 클라이언트 ID는 컨트롤의 모든 ID와 모든 조상을 밑줄로 결합하여 구성됩니다. 따라서 단일 클라이언트 ID의 안정성은 여러 컨트롤의 영향을받습니다.

생성 된 클라이언트 ID는 일반적으로 제어 트리가 항상 동일한 방식으로 다시 작성된 경우에만 안정적으로 유지됩니다. 이는 많은 경우에 해당하지만 절대적인 것은 아닙니다. 동적으로 컨트롤을 추가하거나 제거하면이 가정을 쉽게 깨뜨릴 수 있습니다.


ASP.Net 4 (? 또는 4.5) 다른 ID 모드를 도입 - 주로 "예측", 명명 컨테이너의 링크를 참조 -하지만 SharePoint에서이 새로운 기능을 어디서나 사용 믿지 않는다; ctXYZ 구성 요소가 포함 된 ID에는 사용되지 않습니다.

+0

그 해답을 알려줘서 고맙습니다. – gcarterIT

관련 문제