[英]A part of AJAX response storing in PHP variable
我需要將一段數據存儲到 PHP 變量中,該變量是通過輸入框中的 AJAX 響應接收的。 我怎樣才能做到這一點?
<script type="text/javascript">
$(document).ready(function() {
$("#user_id").change(function() {
var id = $(this).val();
var dataString = 'user_id='+ id;
$.ajax({
type: "POST",
url: "wmat_details.php",
data: dataString,
cache: false,
success: function(result) {
var data = result.split(",");
$('#name').val(data[0]);
$('#email').val(data[1]);
$('#ref_id').val(data[2]);
$('#candidature_start').val(data[3]);
$('#candidature_end').val(data[4]);
$('#default_attempts').val(data[5]);
$('#existing_complimentary').val(data[6]);
$('#wmat_start').val(data[9]);
$('#wmat_end').val(data[10]);
$('#attempts_taken').val(data[11]);
}
});
});
});
</script>
如上面的代碼所示,我想存儲$('#attempts_taken').val(data[11]);
這個值到一個 PHP 變量。 任何見解表示贊賞。
不幸的是你不能。
PHP 是服務器端,而 jQuery (JS) 是客戶端。 它們是兩個獨立的抽象層,僅在客戶端調用服務器時交互。
我沒有足夠的信息來說明您需要對數據 [11] 做什么,但您似乎只有一種選擇:對將操作數據 [11] 的 php 文件進行連續的 AJAX 調用。
連續的 AJAX 調用必須從第一個調用成功回調內部執行; 像這樣:
success: function(result){
// Your on success logic
// ...
// Prepare the object to send to the server
var objData = {};
objData.attemptsTaken = data[11];
// Execute the second AJAX call to the server
$.ajax({
type: "POST",
url: "second_call_destination_file.php",
data: objData,
success: function(result){
// Do something on success
},
error: function(){
// Do something on error
},
complete: function(){
// Do something on complete (executed after success and error)
}
}
您不能將 ajax 響應存儲到 php 變量中。
方式1:
您可以進行另一個 ajax 調用。
方式2:
你可以設置會話。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.