如何使用AJAX返回兩個參數?如何使用AJAX返回兩個字符串?
這是我的。這裏是我的html頁面上的2個textareas。
<textarea name="source" id="source" onkeyup="myfunc(this.value);}"></textarea>
<textarea name="res1" id="res1"></textarea>
<textarea name="res2" id="res2"></textarea>
onkeyup事件調用MYFUNC()函數從js文件。
MYFUNC()包含這樣的字符串:
...
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("res1").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("POST","ajax_file.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded;charset= UTF-8");
xmlhttp.send("q="+encodeURIComponent(str));
作爲結果,ajax_file.php使得一些計算,計算q和p並返回Q值。字符串q返回到textarea res1。一切都好,它工作正常。但是,我希望將值p更改爲res2(另一個textarea)。這是計算,但我不知道如何返回多個參數。有什麼辦法做到這一點? 謝謝。
對不起,但對我而言還不清楚。好的,我把$ p和$ q放在一個數組$ arr中,就像你說的那樣,並且使得echo json_encode($ arr);好。現在,如何將$ arr ['str1']提取到res1中?我用document.getElementById(「res1」)。innerHTML = xmlhttp.responseText;在我的.js文件中,當我只有一個返回的參數。謝謝。 – Haradzieniec 2012-04-17 13:06:27
@Haradzieniec你應該解析JSON客戶端,然後使用參數。我編輯了我的答案。 JSON通常是一種瀏覽器方法,在舊版瀏覽器中有一些JavaScript庫可供使用 – 2012-04-17 13:14:43
我已將您的代碼放到我的問題結尾(請參閱上文),以詢問爲什麼它不起作用。它得到一個錯誤。謝謝。 – Haradzieniec 2012-04-17 14:12:25