응용 프로그램 내에서 발생하는 문제를 복제하는 데 아주 간단한 테스트 페이지를 만들었습니다. 너무 오래 걸린 것처럼 보이는 것이 그리 간단한 일이 아닙니다.OnClick 이벤트가 실행되지 않음
코드의를 Page_Load에서에서 .aspx 페이지
<body>
<form id="form1" runat="server">
<asp:TextBox ID="tb" runat="server"></asp:TextBox>
<asp:Button ID="btnOk" runat="server" text="OK" Width="60px" UseSubmitBehavior="true" OnClientClick="saveAmendments();" />
</form>
내가로 렌더링됩니다 텍스트 상자
if (!IsPostBack)
{
tb.Attributes.Add("onchange", "addSaveDetails('abc###123###456###test###abc###');");
}
}
에 onchange를 속성을 추가 뒤에은
<body>
<form name="form1" method="post" action="TestJP.aspx" id="form1">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUi3er8ht8oaCZzy2..." />
</div>
<div>
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWAwKOoa..." />
</div>
<input name="tb" type="text" value="testtt" id="tb" onchange="addSaveDetails('abc###123###456###test###abc###');" />
<input type="submit" name="btnOk" value="OK" onclick="saveAmendments();" id="btnOk" style="width:60px;" />
</form>
을 다음과
그래서 텍스트 상자의 값을 변경하고 화면의 다른 부분을 클릭하면 AddSaveDetails 함수가 실행됩니다. 그런 다음 버튼을 클릭하면 saveAmendments가 실행됩니다. 그러나 텍스트를 변경 한 다음 버튼 (화면의 다른 부분이 아닌)을 클릭하면 첫 번째 (onchange) 기능 만 실행됩니다. onClick 이벤트는 결코 수행하지 않습니다. 호출되는 js는 경고 이외의 아무것도하지 않습니다. 마지막 호출까지 버블 링되는 이벤트를 멈출 수있는 것은 무엇입니까?