문제

빠른 정보 : .NET 2.0의 최신 릴리스를 사용하고 있으며 다음은 오류를 재현하기 위해 쓴 스트리핑 테스트 페이지입니다.

헤더 비트를 제외하고 (포함/인라인 CSS 또는 JavaScript가 없음) 내 콘텐츠 페이지는 다음과 같습니다.

<asp:Content ID="Content1" ContentPlaceHolderID="cphMain" runat="server">
<div>
    <asp:ValidationSummary ID="ValidationSummary1" runat="server" />
    <asp:TextBox ID="txtStuff" runat="server"></asp:TextBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtStuff" Display="None" ErrorMessage="need to fill it with words">  </asp:RequiredFieldValidator>
    <asp:Button ID="bClick" runat="server" Text="Kerlick" />
</div>
</asp:Content>

내 마스터 페이지 (헤더 비트 제외)는 다음과 같습니다.

<body>
<form runat="server" id="Form1">
                <div>
                    <asp:ContentPlaceHolder ID="cphMain" runat="server">
                    </asp:ContentPlaceHolder>
                </div>
                <div id="end">

                </div>
</form>
</body>

버튼을 클릭하면 페이지가 발생합니다 "Microsoft jscript 런타임 오류 : 객체는이 속성 또는 방법을 지원하지 않습니다."오류, Webresource.axd 기능에서ValidationSummaryOnsubmit (validationGroup) (라인 512).

내가 div의 ID를 변경하면 id = "end" "종료"이외의 다른 것에서 문제를 해결합니다.

이제이 문제를 해결했지만 왜 이것이 왜 처음부터 깨질 지에 관심이 있습니까?

검증 요약이 동일한 ID로 DIV를 렌더링하고 어딘가에 혼란 스러울 수 있습니까?

도움이 되었습니까?

해결책

확실히 알아내는 한 가지 방법.

Firebug를로드하고 ValidationSummary를 호출하고 페이지를 탐색하여 새로운 요소가 추가 된 것을 확인하십시오.

일반적으로 중복 ID는 문제가 발생하지 않으며 Runat 서버 설정이 없으므로 서버 측 제어가 아닙니다.

매우 흥미로운

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top