[英]How to pass JS variable to PHP variable
這是我第一次涉足Ajax,我感到困惑。
問題: JS變量似乎沒有通過Ajax傳遞給php。
我收到此通知:
注意:未定義的索引:第31行的C:\\ xampp \\ htdocs \\ Website \\ ref_files \\ delete.php中的文本
第31行是: $name = $_POST['text'];
所以問題似乎是,據我所知,“ text
”沒有傳遞給php嗎?
JS和PHP都在WhatsNew.php中包含的delete.php中。
我得到“ Response:
顯示在頁面上,並顯示一條警告“成功”。
“文本”中有一個值,我已經用alert(text)測試了它。
JavaScript + Ajax
<script>
var text = $('#title').text()
$.ajax({
url: "WhatsNew.php",
type: "post",
cache: "false",
data: text,
success: function(){
alert("success");
},
error: function(){
alert("failure");
}
});
</script>
的PHP
<?php
$name = $_POST['text'];
echo "Response: " . $name;
?>
如果需要更多信息,它將在此之后發布。
您需要將數據更改為:
data: {text: something},
並在js中更改變量的名稱,因為編譯器將不知道采用哪個文本,例如:
var something = $('#title').text();
如果這不起作用,請發表評論!
在其他文件上的php中嘗試此操作,並成功獲得一些響應:
<?php
echo "hello";
$name = $_POST['text'];
echo "<label id='1'>Response: " . $name . "</label>";
?>
你需要改變
data: text,
至
data: {text:text},
您已步入正軌,只需進行一項修改:
data: {text:text},
您需要發送text
作為發布數據的關鍵。
在嘗試讀取$('#title').text()
之前,您需要等待文檔准備就緒。
只需將所有內容都包裝在$(function() {...})
中(以及其他人指出的data:{text:text}
)。
$(function() {
var text = $('#title').text();
$.ajax({
url: "WhatsNew.php",
type: "post",
cache: "false",
data: {text:text},
success: function(){
alert("success");
},
error: function(){
alert("failure");
}
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.