2015-11-23 24 views
0

似乎当我试图从解析数据中检索信息时我没有任何问题将用户表中的信息显示在我的文档上,但是当我尝试查询另一个对象&使用jQuery使用text();html();val();将其插入到id元素中我或者什么也没得到,或者文本变成[object Object]。以下是我写下的代码。我也尝试了一种JavaScript方法&相同的输出我得到[object Object]。另外,当我控制台日志JSON stringify query.get("fieldone")我得到这个。当从解析对象中检索信息时,解析JavaScript [object,Object]

{ “_resolved”:假, “_拒绝”:假, “_ resolvedCallbacks”:[], “_ rejectedCallbacks”:[]}

我怎样才能把它转换成字符串值我想要检索。以下是密码

 var currentUser = Parse.User.current(); 



    if (currentUser) { 
     var UserInfo = Parse.Object.extend("UserInfo"); 
     var query = new Parse.Query(UserInfo); 
     query.equalTo("user", currentUser); 
     query.find({ 
      success: function(UserInfo) { 
      // The object was retrieved successfully. 


      console.log(JSON.stringify(query.get("fieldone"))); 

      document.getElementById('fieldone').innerHTML = query.get("fieldone"); 

      $('#fieldtwo').html(query.get("fieldtwo")); 

      $('#startDate').html(query.get("startdate")); 

      $('#endDate').html(query.get("enddate")); 
     }, 
     error: function(object, error) { 
      // The object was not retrieved successfully. 
      // show alert 
     } 

    }); 

    } 

回答

0

您的成功功能是错误的。 query.get做一个查询,就像query.find,它返回一个承诺(你的console.log显示它),也应该有一个success函数(他们每个人)。

总之,成功的功能得到你想要查找/查询对象的对象或数组,试试这个:

success: function(userFound) { 
    // The user was retrieved successfully. 
    console.log(userFound); 
} 

你应该可以看到你的用户用他的所有属性。

0

当您调用query.find时,您将收到与您设置的条件相匹配的所有用户(在ARRAY中)。在这种情况下,它将只是一个用户。

在这个简单的例子中,您可以使用GET或FIRST,这样做更有意义。而且你还应该使用承诺(完成/失败)而不是回调块,因为它们可以链接在一起,并提高了可读性。

而最后的答案是,要获得字段的值,您应该在OBJECT中使用GET,而不是在查询中。

所以,我对你的代码的建议是:

var currentUser = Parse.User.current(); 
if (currentUser) { 
    var UserInfo = Parse.Object.extend("UserInfo"); 
    var query = new Parse.Query(UserInfo); 
    query.get(currentUser.id).done(function(userQueried) { 
     // The object was retrieved successfully. 
     console.log(JSON.stringify(userQueried)); 
     document.getElementById('fieldone').innerHTML = userQueried.get("fieldone"); 
     $('#fieldtwo').html(userQueried.get("fieldtwo")); 
     $('#startDate').html(userQueried.get("startdate")); 
     $('#endDate').html(userQueried.get("enddate")); 
    }).fail(function(error) { 
     // The object was not retrieved successfully. 
     console.log(JSON.stringify(error)); 
    }); 
} 

这就是它!

相关问题