一个按钮提交两个Ajax请求

var BPSQueryLimitsMenu = new Ext.menu.Item({
text:'查询CAN总线的滤波上\下限',
//style:'height:35;',
handler: function(){
var unitids = [];
var calls = [];
if (treeMenu.from == 3) {
unitids = selectionId;
calls = traceCallLetter;
} else {
unitids = curSelUnitId;
calls = curSelCalls;
}
Ext.Ajax.request({
url : 'sendInjunction',
sync:true,
params : {
type : 'BPSControl',
'unitid' : unitids,
'callletter' : calls,
'key' : '13',
'detail' : '0'
},
success : function(req){
infoPanel.body.update('查询CAN总线的滤波上\下限指令已发送.等待回应信息.');
infoPanel.body.show();
delayHideInfoPanel();
}
});
Ext.Ajax.request({
url : 'sendInjunction',
'key' : '12',
success : function(req){
infoPanel.body.update('查询CAN总线的滤波上\下限指令已发送.等待回应信息.');
infoPanel.body.show();
delayHideInfoPanel();
}
});
}
});

上面的代码实现用一个按钮同时发送两条命令,开始没加sync:true,参数结果后台捕获的命令代码很奇怪,第二个命令的SN发送异常,如下:

第一次:

发送指令:0120110720174158100019~15949240314~18~13&0&0|012011072017415810001920110720174158100020~15949240314~18~12&0&0|

第二次:

发送指令:

0120110720173442100015~15949240314~18~12&0&0|012011072017344210001520110720173442100016~15949240314~18~13&0&0|
可以看到发送命令的顺序没有规律,更为严重的是第二条命令的SN长度不对,莫名其妙。

添加sync:true,参数后,捕获命令如下:

发送指令:0120110720174624100024~15949240314~18~13&0&0|0120110720174624100025~15949240314~18~12&0&0|

发送正常,顺序正常。

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...