2012-04-26 119 views
0

我正嘗試使用Android上的手機差距訪問移動聯繫人。 我訪問的聯繫人&在下拉框中顯示它們,然後用戶應該選擇所需的聯繫人,然後該聯繫人應該顯示在文本框中。對象對象無法轉換爲字符串

現在,當我點擊聯繫人列表中的某個聯繫人時,文本框的值將更改爲[對象對象]。

我想:

JSON.stringify(data.value); 

,但它只是改變了[目標對象]爲 「[對象對象]」。

我想:

data.value.tostring(); 

&

data.value.formatted; 

但隨後的輸出是不確定的。

這就是JS行我改變文本框的內容有:

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

所以,你知道我怎麼可以改變對象的對象,爲普通可讀的字符串?

+0

JSON的外觀如何? – jbabey 2012-04-26 13:00:49

+0

這裏是:$('#contacts')。append('

回答

2

如果您的「數據」對象的類型爲Contact,那麼您應該使用data.displayName或data.name.formatted,如果您想要聯繫人姓名。

+0

我會試試看,謝謝。 – 2012-04-28 14:02:02

+0

但是當我寫: selectedArray [count] = selContacts.options [i] .name.formatted; 它無法識別格式化的單詞,你知道該行的語法應該如何寫嗎? – 2012-04-30 11:03:21

+1

我需要看到更多的代碼才能毫無把握地回答。你是如何獲得聯繫人數組的?你的查找方法是什麼樣的,你的成功回調是什麼樣的。 – 2012-04-30 15:13:25

1

看起來你正在使用的聯繫人對象沒有toString()實現;默認的JavaScript toString()會給你你得到的結果。您將不得不編寫一個函數來拉取所需的成員值並創建一個字符串。或者,您可以添加toString(),但我不認爲這是最好的選擇,因爲Contact對象似乎來自第三方Cordova,正如@Simon MacDonald的回答中所標識的。