0

我有这个 php 脚本

if (!$chunks || $chunk == $chunks - 1) {
// Strip the temp .part suffix off 
    rename("{$filePath}.part", $filePath);
    if( $content = $this->html_file_uploaded( $filePath ) ){

        die('{"Done" : "yee", "content" : "woe" , "id" : "id"}');
            }

在JavaScript中我想做

 FileUploaded: function(up, file, info) {
    // Called when a file has finished uploading

    $('body').prepend('FileUploaded fired<br>'+info.Done);

但是如果我把它写到页面上,它会返回 undefined

$('body').prepend('FileUploaded fired<br>'+info.Done);

var info = $.parseJSON(info);对我不起作用。

我怎样才能让它工作?

编辑 JavaScript 和 php 来自plupload api

我不想使用json_encode,除非我被告知发送这样的字符串永远无法工作,或者不可靠。我对如何将字符串转换为有效对象感兴趣。我使用在线json 字符串检查器,它说它无效, - 无法格式化 JSON 输入。文本必须在JSONObject''{'"Done" :' 附近的字符 1 处以 '{' 开头

4

2 回答 2

1

JSON.parse()是你需要的。如果这不起作用,那么你在 php 方面做错了。

注意:如果您想在旧版浏览器中包含 JSON 支持(谁说 IE7?),您需要包含来自https://github.com/douglascrockford/JSON-js的 Douglas Crockford 的 JSON2.js

于 2012-10-13T20:12:13.420 回答
1

在你的回调函数(引用为FileUploaded)里面做

var obj = $.parseJSON(info.response);

现在您可以参考响应obj.Done

于 2012-10-13T22:55:52.520 回答