嗨即時通訊使用jquery在一些循環中建立一個html表運行幾個ajax請求。取決於內循環與阿賈克斯請求
我該如何讓它們按特定順序運行?
我tryed $。當,然後但對我來說,只有使用似乎異步工作:假的,
我有兩個主要功能
1)建立一個循環內Ajax請求的URL
for (var i = 0; i < split.length; i++) {
zeile = split[i];
request = $.ajax({
url: "url.php?q=" + zeile,
,然後繪製基本表
success: function(data) {
$.each(data.data, function(key, val) {
p = p + "<td>...</td>"
p = p + "<td>...</td>"
p = p + "</tr>";
$("#htmlergebnis").append(p);
畢竟不同的熱曲EST完成,完整的表格繪製我想運行第二個功能,它現在添加來自另一個數據源的表格單元格。爲此它使用了值超出每個現有行(第一循環繪製)作爲搜索值的另一請求
$(".ergebniszeile").each(function(key) {
...
var str = "url2.php?q=" + zeile;
$.ajax({
url: "" + str,
type: 'GET',
dataType: 'JSON',
success: function(data) {
$("#"+rowid+"").children(".value2").append(data.value2);
我還測試.ajaxComplete和.ajaxStop,但他們似乎與任何Ajax請求不工作循環內的一組特定的請求。
我認爲問題是建立ajax網址的循環。它不是依賴於對方的ajax請求,而是在內部循環與ajax請求。
結果看+相應請求將在此建爲了
<tr><th>loop 1</th><th>loop 1</th><th>loop 1</th><th>loop 2</th><th>loop 2</th><tr>
<tr><td>request 1</td><td>request 1</td><td>request 1</td><td>request 4</td><td>request 4</td></tr>
<tr><td>request 1</td><td>request 1</td><td>request 1</td><td>request 5</td><td>request 5</td></tr>
<tr><td>request 1</td><td>request 1</td><td>request 1</td><td>request 6</td><td>request 6</td></tr>
<tr><td>request 2</td><td>request 2</td><td>request 2</td><td>request 7</td><td>request 7</td></tr>
<tr><td>request 2</td><td>request 2</td><td>request 2</td><td>request 8</td><td>request 8</td></tr>
<tr><td>request 3</td><td>request 3</td><td>request 3</td><td>request 9</td><td>request 9</td></tr>
<tr><td>request 3</td><td>request 3</td><td>request 3</td><td>request 10</td><td>request 10</td></tr>
都是你的第一個要求加入到同一個表?即他們每個人都返回一些'data.data',你將它附加到* same *表中?我不完全清楚第二批AJAX請求是如何與第一批請求相關的......您可以擴展您的解釋嗎? – Matt
其全部在一個表中。第一個colums從第一個循環中抽出。 – user3503669