【发布时间】:2011-08-26 01:00:52
【问题描述】:
我已经阅读了很多关于这个问题的问题,但我找不到答案。
我想做的(我认为这将是 2011 年最简单的事情)就是使用 jquery 和 ajax 从我的数据库中获取一些信息,并将其保存在一个变量中,以便以后用它做一些事情。 5个小时后,我还在。这不可能吗?
这方面的典型例子是:
$.post("test.php", { name: "John", time: "2pm" },
function(data) {
alert("Data Loaded: " + data);
});
和
$.post("test.php", { name: "John", time: "2pm" },
function(data) {
$("somediv").html(data);
});
所以效果很好...如果您现在就使用该值并忘记它。
现在我不想在页面或警告框中显示信息,我只想将其保存在一些变量中,以便以后进行一些计算。
当我将数据分配给变量时,值总是会丢失。在阅读了一堆关于这个的答案之后,显然没有办法返回数据,因为这个函数是异步的并且工作方式不同,我们不明白它是如何工作的,等等。
例如我试过这个:
return data from jquery $.post
但这对我不起作用。或者我没有正确理解它,这是解释还是示例?我应该输入回调还是应该用一些东西替换它?
有人说像这里这样调用另一个函数:
这也不起作用,数据已传递给函数,我可以在那里使用它,但如果我将它保存在变量中,它就会丢失,并且无法返回函数,因为我从哪里得到什么函数返回?
最后我说你知道吗,我只是将值放在隐藏字段中,然后我会访问它。那也不起作用,我可以将值放在字段中,但是当我尝试访问它时......它还不存在。
我不应该使用 $.post 吗? $.ajax 有什么不同吗?我怎样才能做到这一点? ajax 从数据库中获取值并将其保存在 javascript 中以备后用真的很难吗?每个人都立即使用它吗?真的有这么难吗?
【问题讨论】: