prototype.jsバージョン1.7を使用して複数のajaxリクエストに関する問題が発生しました。Ajax.jspページへの複数の呼び出しでプロトタイプフレームワークのリクエストがハングアップする
function checkClonability(element) {
var strUrl = "/dssweb/js/ajaxdbdispatcher";
var rowIndex = element.id.split('_')[1];
var tabschema = $('tabschema_' + rowIndex).innerHTML.trim();
var tabname = $('tabname_' + rowIndex).innerHTML.trim();
var op = <%=AjaxDbDispatcher.CLONE_TABLE_COMPARE%>;
workLevel(rowIndex, 'run');
var qb = new QueryStringBuilder();
qb.addParameter('op', op);
qb.addParameter('dbsource', 'UAT');
qb.addParameter('dbtarget', 'PROD');
qb.addParameter('tabschema', tabschema);
qb.addParameter('tabname', tabname);
new Ajax.Request(strUrl, {
method:'post',
asynchronous: true,
parameters: qb.toString(),
onSuccess: function(transport){
var json = transport.responseText.evalJSON();
if(json.equals) {
workLevel(rowIndex, 'ok');
element.onclick = '';
} else {
element.checked = false;
element.disabled = true;
workLevel(rowIndex, 'ko', 'La tabella ha un tracciato diverso in produzione!');
}
},
onFailure: function(err){
workLevel(rowIndex, 'none', 'Si è verificato un errore durante la verifica.');
}
});
}
strUrlは、2つの異なる環境間でのデータベーステーブルの比較を行い、Javaサーブレットである:ここで
私はAJAX呼び出しを行うために書いた関数です。 マイページには、選択するテーブルとチェックボックスのリストが表示されます。 この関数は、チェックボックスのonclickイベントによって起動されます。 1回の呼び出しですべてうまく動作しますが、最初の呼び出しの終了を待たずにいくつかのチェックボックスをチェックしようとするとハングアップします。 私はchrome 8とIE6で試しましたが、私はApache Tomcat 6で作業しています。
助けが必要です。
テーブルマークアップのサンプルを表示したり、クリックイベントにどのようにフックしたりできますか? – BiAiB
。私は '複数選択'ボタンを押すと、すべてのチェックボックスをスローして、それぞれの方法でmyCheckboxInstance.click();メソッドを実行します。 –