我想将数据从js发送到php函数,然后我想在div中返回函数结果,这是我的代码:
function loadpage(){
var text = document.getElementById("textarea").value;
$.ajax({
type: 'POST',
url: 'lib/ajax.php',
data: {'text': text},
success: function(){
$("#inneroutput").load("lib/ajax.php");
}
});
HTML:
<textarea placeholder="Type your text here..."
id="textarea"></textarea> <div id="inneroutput"></div>
ajax.php:
<?php $data = $_POST['text'];
echo $data; ?>
但我在php中遇到错误:
Undefined index: text
那么代码中的错误在哪里?
答案 0 :(得分:2)
错误来自您第一次通话的成功。
$("#inneroutput").load("lib/ajax.php");
这会再次调用页面,但不会使用&#34; text&#34;参数。即 - 文本未定义。
如下所述将您的成功改为:
success: function(res){
$("#inneroutput").html(res);
}
无论你是什么&#34;回声&#34;将通过&#34; res&#34;变量
答案 1 :(得分:1)
尝试一次!!
function loadpage(){
//only for one textarea
var text = document.getElementByTagName("textarea").value;
$.ajax({
type: 'POST',
url: 'lib/ajax.php',
data: {'data1': text},
success: function(res){
$("#inneroutput").html(res);
}
});
答案 2 :(得分:0)
您正在检索页面lib/ajax.php
两次。传递一个名为&#39; text&#39;的$_POST
变量后。下次你没有。
我怀疑在您的php文件中,您正在使用$_POST['text']
执行某些操作而不检查它是否存在。第二次尝试检索页面时(没有POST任何内容)它失败了,你得到了这个错误。