내 코드에 관한 문제가 있습니다. 내 프로그램에서, 나는 사용자가 어떤 페이지를 그녀가/tblPlank
과 tblSummary
(tblSummary와 tblPlank가 둘 다 jqgrid 였음)에 보여지기를 원하는지 선택할 수있는 옵션 상자를 가지고있다. Evrytime은 페이지를 선택하고 버튼을 클릭하면 displayPageNum
함수를 호출합니다. 이제 내 문제는이 두 가지 :내 두 아약스가 동시에 요청을 보냅니다.
url:'processjson.php?path=' + encodeURI('getData/tally/page') + '&json=' + encodeURI(JSON.stringify(datas)),
및
url:'processjson.php?path=' + encodeURI('getReport/tallySummary') + '&json=' + encodeURI(JSON.stringify(datas)),
전송 요청이 권리를 표시 해달라고 산출. 그렇다면이 문제를 해결하여 한 번에 하나씩 요청을 보낼 수 있습니까?
function displayPageNum(){
var flag = 0;
if ($("#page option:selected").text() != 'all'){
var datas = {
"SessionID": $.cookie("SessionID"),
"dataType":"data",
"transaction_id":$('.transactionID').attr('id'),
"page":$("#page option:selected").text()
};
$('#tblPlank').setGridParam({
url:'processjson.php?path=' + encodeURI('getData/tally/page') + '&json=' + encodeURI(JSON.stringify(datas)),
datatype: primeSettings.ajaxDataType
});
$('#tblPlank').trigger('reloadGrid');
flag =1;
if (flag == 1){
var datas = {
"SessionID": $.cookie("SessionID"),
"dataType":"data",
"transaction_num":$('.transactionID').val(),
"page":$("#page option:selected").text()
};
$('#tblSummary').setGridParam({
url:'processjson.php?path=' + encodeURI('getReport/tallySummary') + '&json=' + encodeURI(JSON.stringify(datas)),
datatype: primeSettings.ajaxDataType
});
$('#tblSummary').trigger('reloadGrid');
}
}
}
플래그 변수를 넣어서 한 번에 하나씩 요청을 보내지 만 동시에 요청을 보냅니다. 다른 아약스 요청 첫 번째 성공)
1) 동기 아약스 요청 또는
2 보내기 :
예, 처음 성공하면해야한다는 것을 알고 있습니다. 하지만 지금 당장 가지고있는 코드로 어떻게해야하는지 모르겠습니다. – jayAnn
정상적인 아약스 호출에는 success라는 콜백 함수가 있어야합니다. 두 번째 아약스 호출을 시도 할 수있는 function() {}. – Pehmolelu