对象获取数组值

时间:2015-07-24 13:16:33

标签: jquery arrays html5 cordova

在jquery(Cordova文件传输)中成功将文件传输到服务器后,我将对象作为响应。

现在对象中有数组,如:

 Array
    (
        [file] => Array
        (
            [name] => socialnoise51@gmail.com1437742503025
            [type] => image/jpeg
            [tmp_name] => /tmp/php4TR9pw
            [error] => 0
            [size] => 348392
        )
    )    

如何获得名称的价值?

2 个答案:

答案 0 :(得分:1)

显示的代码看起来像是php数组的打印。这不是在ajax请求中读取的有效响应。使用json_encode()来回显数组的json表示

echo json_encode($data);

我不熟悉cordova文件传输,因此您可能需要或不需要使用JSON.parse(results)解析响应以转换为javascript对象。

如果此转移使用$.ajax设置,则将dataType设置为'json'将在内部进行解析

答案 1 :(得分:0)

就像charlietfl已经说过的那样,在设备和服务器之间处理数据的常规方法是jQuery提供的ajax。用于从服务器检索数据的Ajax函数如下所示:

function getDataFromServer() {
    var term=null;
    $.ajax({
        url:'http://yourUrlGoesHere.tld',
        type:'GET',
        data:term,
        dataType:'json', //defines what you get back from the server

        error:function(jqXHR,text_status,strError){},
        success:function(data) //{
                for (i=0; i < data.items.length; i++){
                                    //This is the part, where you can do what you want with anything inside the array. 
                console.log(data);  //i would simply do this to first see the result inside the console
                }

        }
    })                                                                          
}

所以,属于你的评论,你应该把你的数组保存在某事物中。例如叫做myArray。现在可以通过shorturl访问myArray.shorturl

尝试console.log(myArray.shorturl);

之类的内容