我有一个MySQL数据库,其中包含经常更改的数据。我需要根据MySQL数据库的内容获取一个字符串到javascript,我得出结论,jQuery是最好的方法。我想做的事情如下:
var myReturnedString = $.post('myphpcode.php', {myJSData}, function(data) {return data;})
问题是即使myphpcode.php回显一个字符串,我认为jQuery传递的数据是某种对象,我无法弄清楚如何解析它。有什么建议吗?
答案 0 :(得分:0)
您必须指定返回数据的类型。
$.post('myphpcode.php', {myJSData}, function(data) {return data;},'dataType');
dataType可以是text,json或xml
答案 1 :(得分:0)
当你调用$.post()
时,它实际上只是$.ajax()
的包装器,你做了两件事:1,启动对服务器的异步请求,2,设置事件处理程序当请求完成时(即收到响应时)。
此事件处理程序的工作方式与任何其他事件处理程序的工作方式大致相同,例如使用$.click()
或$.keyDown()
设置的事件处理程序。因此,$.post()
调用几乎立即完成,并且代码继续执行。然后,一段时间后,收到响应并且将触发回调(传递给$.post()
的函数)。
所以你需要的更像是:
$.post('myphpcode.php', {myJSData}, function(data) {
// this is executed only when the request is complete.
// the data parameter is the result of the call to the backend.
});
// code here is executed immediately after the request is fired off
P.S。您通常使用“发布”请求将数据发送到服务器;如果您只是检索数据,则更常见的是使用“获取”请求,即$.get()
而不是$.post()
。