0

我正在尝试使用 Android 上的电话间隙访问移动联系人。我访问联系人并在下拉框中显示它们,然后用户应该选择所需的联系人,然后该联系人应该显示在文本框中。

现在,当我单击联系人列表中的一个联系人时,文本框的值将更改为 [object object]。

我试过了:

    JSON.stringify(data.value);

但它只是将 [object object] 更改为“[object object]”。

我试过了:

    data.value.tostring(); 

&

    data.value.formatted;

但随后输出未定义。

那是我更改文本框内容的 jS 行:

       document.getElementById ("friendName").value = "/*Stringified data is written here*/;

那么您知道如何将对象对象更改为普通的可读字符串吗?

4

2 回答 2

2

如果您的“数据”对象是联系人类型,那么您应该使用 data.displayName 或 data.name.formatted 如果您想要联系人名称。

于 2012-04-27T19:18:13.297 回答
1

看起来您正在使用的联系人对象没有toString()实现;默认的 JavaScripttoString()会给你你得到的结果。您将必须编写一个函数来提取所需的成员值并创建一个字符串。或者,您可以添加 a toString(),但我认为这不是最佳选择,因为该Contact对象似乎来自第三方 Cordova,正如@Simon MacDonald 的回答中所确定的那样。

于 2012-04-26T13:04:42.797 回答