ajax를 사용하여 부분보기를 얻기 위해 다시 게시물을 만들고 있습니다. 다음 코드를 사용하고 있습니다.
<script type ="text/javascript" >
$('#Retrieve').click(function () {
$('form').get(0).setAttribute('action', 'Search');
// $('form').submit();
var formSubmit = $('form');
var datTab;
$.ajax({
url: "/AuthorityGrid/Search",
type: "POST",
data: formSubmit.serialize(),
success: function (data) {
datTab = data;
},
complete: function () {
$('#DivSearchGrid').html(datTab);
}
})
return false;
});
</script>
컨트롤러의 액션 메서드는 새 값이있는 그리드를 반환합니다. 내 문제는 ajx 호출이 완료된 후 내 페이지의 다른 jquery 이벤트가 작동하지 않는다는 것입니다. 이벤트 코드
<script type="text/javascript">
$(function () {
//$('th[scope|="col"]').resizable();
$("#resultGrid > tbody").selectable({
selected: function (event, ui) {
if (ui.selected.cells != null) {
var strAmount = ui.selected.cells(6).innerText;
var Amount = strAmount.replace(/,/gi, "");
var keyValue = "AuthorityLevel1=" + ui.selected.cells(11).innerText + ",AuthorityLevel2=" + ui.selected.cells(12).innerText + ",TcmAccount=" + ui.selected.cells(2).innerText + ",TcmType=" + ui.selected.cells(10).innerText + ",Rating=" + ui.selected.cells(5).innerText + ",Amount=" + Amount + ",AuthorityGridKey=" + ui.selected.cells(9).innerText + ",CagName=" + ui.selected.cells(3).innerText
var keyValModify = ui.selected.cells(11).innerText + "," + ui.selected.cells(10).innerText + "," + ui.selected.cells(12).innerText + "," + ui.selected.cells(5).innerText + "," + ui.selected.cells(2).innerText + "," + Amount + "," + ui.selected.cells(3).innerText + "," + ui.selected.cells(9).innerText
$('#CancelViewParam').val(keyValue);
$('#ModifyViewParam').val(keyValModify);
}
}
});
});
</script>
이 함수는 그리드에서 행을 선택하고 선택된 값을 숨겨진 필드에 넣습니다.
또한이 함수에 대한 ajax call.code 후에 팝업을 여는 함수가 작동하지 않습니다.
$(function () {
$("#DivSearch").dialog({ autoOpen: false, height: "600", width: "600", dialogClass: "myRatingHelp", modal: true });
$('#bRatingHelperDivSearch').live('click',function () { $('#DivSearch').dialog('open'); });
$('#DivSearchRating_bOk').click(function () {
$("#InputAuthorityGridSearch_Rating").val($("#hidRating").val());
$("#DivSearch").dialog('close');
});
$('#DivSearchRating_bCancel').click(function () {
$("#DivSearch").dialog('close');
});
});
이 함수는 ajax 호출 전에 완벽하게 작동하지만 ajax 호출 후에는 모두 작동을 멈 춥니 다. 나는 이것에 붙어 있습니다. 제발 도와주세요.
문제는 HTML이 교체되면 요소의 바인딩이 손실된다는 것입니다. 이벤트를 신체 또는 귀하의#DivSearchGrid'
$('#DivSearchGrid').on("click", "#DivSearchRating_bOk", "function () {
$("#InputAuthorityGridSearch_Rating").val($("#hidRating").val());
$("#DivSearch").dialog('close');
});
또는
$('body').on("click", "#DivSearchRating_bOk", "function () {
$("#InputAuthorityGridSearch_Rating").val($("#hidRating").val());
$("#DivSearch").dialog('close');
});
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다