前提・実現したいこと
JavaScriptにて非同期で得た値をconsole.logで見てみると
[]
0:"aaa"
1:"540"
2:"540"
3:"540"
4:"640"
5:"590"
6:"760"
7:"900"
8:"920"
9:"1330"
10:"1850"
11:"2570"
12:"4730"
length:13
proto: Array(0)
ここで540や640を取り出したいのですがどのようにすればいいのでしょうか
サーバーサイドのプログラムは追加、変更できないので(レンタルECサイトなので)
なんとかJavaScriptでやりくりしたいと思っています
追記します
JavaScript
1for(var i=0; i<brand_option_length; i++){ 2 3const promise = new Promise((resolve, reject) => { 4 const xmlhttp = new XMLHttpRequest(); 5 xmlhttp.open('POST', '/shop/shopdetail_option.html', true); 6 xmlhttp.addEventListener('load', (e) => resolve(xmlhttp.responseText)); 7 xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 8 xmlhttp.send('db=xxxxxx&uid=' + uid + '&option1_id=' + id1 + '&option2_id=' + id2 + '&login_id='); 9 }); 10 promise.then((response) => request_ar.push(JSON.parse(response).price));//→ここをAとする 11} 12 13function hoge(){ 14 console.log(request_ar);
Aをconsole.log(response)にすると
{"price":"640","no_tax_price":593,"tax":47,"point":0,"quantity":null,"jan_code":"","is_member_price":false,"member_price":0,"member_no_tax_price":0,"member_tax":0,"member_point":0}
のようなレスポンスが複数が返ってきます
このレスポンスからpriceだけ欲しいので
request_ar.push(JSON.parse(response).price))として配列にいれています(じつは、こうしたら偶然priceだけとりだせたのですが)
request_arに入れた値をhoge()で見ると一番上の結果です
この値をサイト上で使いたいのですが、うまくいきません
ご教授いただけると助かります よろしくおねがいします
回答3件
あなたの回答
tips
プレビュー