test.php
<script src="https://code.jquery.com/jquery-1.11.1.js"></script>
<script>
function testing(){
$.ajax({
url: 'test.php',
type: 'GET',
data: { va: "answer" },
success: function(data) {
// do something;
alert("answer") ; }
});
}
</script>
<textarea><?php
$compare= $_GET['va'];
echo $compare; ?>
</textarea>
<button onclick="testing();">click</button>
当我单击按钮时收到一条警报消息,但文本区域没有任何消息。无法将 javascript 变量放入 php 代码中。这是怎么回事?
AJAX 和 PHP 是不同的。
PHP是基于服务器的,AJAX是基于浏览器的。
您正在获取以下数据:
你需要用javascript本身更新这些数据。
由于页面没有刷新PHP,因此不会在此处更新。
success: function(data) {
$("textarea").val(data); // You need update the value with Javacript.
}
执行 ajax 调用后,您永远不会更新文本区域。您需要将id
属性添加到文本区域,以便清楚地了解您指的是哪个文本区域,假设id
是answer
<textarea id="answer"><?php
$compare= $_GET['va'];
echo $compare; ?>
</textarea>
然后使用 $('#answer').val(data)
在成功函数中设置文本区域的值
function testing(){
$.ajax({
url: 'test.php',
type: 'GET',
data: { va: "answer" },
success: function(data) {
// do something;
alert("answer");
$('#answer').val(data);
}
});
}