이 문제는 js 내부의 무한 루프 때문에 발생하는 것으로 알고 있지만 그 이유는 설명 할 수 없습니다. 행을 클릭하여 같은 행의 버튼을 트리거하고 싶습니다. 다음 JQuery를 시도하고 있지만 행을 클릭하면 행 클릭 함수 내부의 무한 루프로 끝납니다. 왜 그런가요?잡히지 않은 RangeError : 최대 호출 스택 크기를 초과했습니다. Chrome JS 오류
$(document).on('pageinit', function (event) {
bindRowClick();
});
function bindRowClick() {
$('.orderTable').find('tr').click(function() {
var btnView = $(this).find('td.tdViewOrder').find('input[type=submit]:first');
btnView.trigger("click");
});
}
는 내가 그 아주 일반적인 질문입니다 알고 <tbody>
<tbody>
<asp:Repeater ID="rptrOrderView" runat="server" OnItemDataBound="rptrOrderView_ItemDataBound" OnItemCommand="rptrOrderView_ItemCommand">
<ItemTemplate>
<tr class="hand">
<td class="title">
<asp:Label runat="server" ID="lblTdOrderNum"></asp:Label>
</td>
<td class="tdViewOrder">
<asp:Button runat="server" ID="btnViewOrder" Text="View" CssClass="btnViewOrder" SkinID="btnViewMiniB" CommandName="ViewOrder" />
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</tbody>
내부 class=".orderTable"
있는 테이블과 중계기를 가지고,하지만 난 여전히 내 문제를 해결하지 않았습니다.
내 클릭 핸들러에 event.stopPropagation();
을 추가 한 지금 노력하고 있습니다
솔루션. 사이클에 갈 수있는 모든 일의 원인 - btnView.click
가 전파 결국 tr
의 클릭 이벤트가 발생하기 때문에
$(document).on('pageinit', function (event) {
bindRowClick();
$('.btnViewOrder').click(function (event) {
event.stopPropagation();
});
});
니스 나는 내 pageinit 이벤트에 이것을 추가했으며 지금은 작업 중입니다. 많은 감사합니다! :) –