从jquery $ .post返回数据 [英] return data from jquery $.post
问题描述
我希望有一个简单的函数,我可以插入一个sqlQuery并以json格式获取数据库答案,如下所示:
I want to have a simple function where i can insert a sqlQuery and get a database answer in json-format like this:
function ExecuteQuery(query){
$.post("sql.php", { "query": query },
function(data){ return data; },
"json");
}
我得到的回复是未定义的,我想我误解了一些非常基本的但是我不知道什么,有人可以给我一个提示吗?
The response i get is undefined, I think i have misunderstood something quite basic but i don't know what, can anybody give me a hint?
推荐答案
问题是你想要的是你不能拥有的东西: - )不要考虑返回值的函数,而是自己编写一个函数,将另一个函数作为参数,并在数据可用时调用它。 / p>
The problem is that you want something you cannot have :-) Instead of thinking in terms of a function that returns a value, write yourself a function that takes another function as an argument and calls it when the data is available.
function ExecuteQuery(query, callback){
$.post("sql.php", { "query": query },
function(data){ callback(data); },
"json");
}
现在,当你调用那个函数时,你会传给它一个函数可以接受服务器响应并使用它做一些事情。
Now, when you call that function, you'll pass it a function that can take the server response and do something with it.
ExecuteQuery("whatever", function(results) {
// do something with "results"
});
这篇关于从jquery $ .post返回数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!