我对 jquery/ajax 调用不太熟悉,我有下面的代码可以从 php 页面 json 值中提取。
$(function(){
$('#search').keyup(function() {
sendValue($(this).val);
});
});
function sendValue(str)
{
$.post(
"back/search.php",
{ sendToValue: str },
function(data) {
if(!data.empty){
//Put the result in the suggest div
$("#suggest").html(data.returnedFromValue);
}
},"json"
);
}
这是 search.php 文件
$values = $database->get_by_name($_POST['sendToValue']);
if( !$values ) {
echo json_encode(array("returnedFromValue" => "ERROR"));
}
else
{
foreach($values as $value) {
echo json_encode(array("returnedFromValue" => $value));
}
}
该值没有出现在建议 div 中的问题,唯一的输出是“错误”,当我在 post 部分下的 firebug 中检查 ajax 请求时,它给我的消息是 sendToValue 不是定义
有什么想法吗?谢谢!
最佳答案
我首先想到的事情(可能还有其他问题,但这是我首先注意到的问题)是你缺少 val
之后的括号。在调用 sendValue
的电话中:
sendValue($(this).val);
应该是:
sendValue($(this).val());
目前,您正在传递val
方法本身进入 sendValue
函数,而不是调用该方法的结果。
关于php - 未定义 sendToValue 的 jQuery ajax 调用错误,此 jquery 代码有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7512746/