0

我有一个 MySQL 数据库,里面充满了频繁更改的数据。我需要根据 MySQL 数据库的内容获取一个 javascript 字符串,我得出的结论是 jQuery 是最好的方法。我想做的是如下所示:

var myReturnedString = $.post('myphpcode.php', {myJSData}, function(data) {return data;})

问题是即使 myphpcode.php 回显一个字符串,我认为 jQuery 传递的数据是某种对象,我不知道如何解析它。有什么建议么?

4

2 回答 2

0

您必须指定返回数据的类型。

 $.post('myphpcode.php', {myJSData}, function(data) {return data;},'dataType');

dataType 可以是 text、json 或 xml

于 2013-07-30T13:41:10.863 回答
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

PS你一般使用“post”请求向服务器发送数据;如果您只是检索数据,则更常见的是使用“get”请求,即$.get()代替$.post().

于 2013-07-30T14:04:20.267 回答