を、私は今のところ機能は、どのように、一度ではなく複数回のメッセージを警告する - JavaScriptの
function postItems(){
var url = baseURL + "order_items/"
var oucu = $("#salesPerson").val()
for (var i = 0; i < currentItems.length; ++i) {
$.post(url, {
OUCU: oucu,
password: password,
order_id: currentOrderId,
widget_id: currentItems[i][0],
number: currentItems[i][1],
pence_price: currentItems[i][2]
}, function(data) {
var obj = $.parseJSON(data);
if (obj.status == "success") {
alert("Order has been placed");
} else {
alert(obj.message);
}
})
}
}
を持って、それは私にすべてのアイテムが掲載された後に配置された順に警告します。すべてのアイテムがAPIに投稿された後、これを一度だけ教えてもらえる方法はありますか?コールバック機能の外にアラートを移動すると、obj.status
にアクセスできません。処理された注文や火災警報()の
メッセージをループ外のリストまたはアレイに保存し、必要なメッセージを生成するために処理したことがありますか? – STLDeveloper
同期ループを使用して非同期操作を処理する場合、いくつかの調整問題が発生します。非同期ループを実装し、ポスト操作全体が完了したときに起動されるコールバックを提供することを検討してください。 – shanks
forループの中で$。post要求をしたくないです。ただしないでください。あなたが望むのは、 'currentItems'の配列全体を渡すというリクエストを1回行うことです(配列であると信じています)。その後、サーバー側で行う必要があることを行います。そして、1つのリクエストに対して1つのアラートメッセージが表示されます。 – caramba