2015-03-04 3 views
0

Я новичок в этой платформе. Это было бы здорово, если бы кто-нибудь мог мне помочь.Невозможно получить доступ к данным в объекте json

-----> У меня есть переменная globalsyncedinData, которая имеет следующие данные в текстовом формате json.

{ 
    "rows": [ 
     { 
      "key": "1234", 
      "id": "1234", 
      "value": { 
       "rev": "1-efaa6f87b907297b8faa3423c1abbe4b" 
      }, 
      "doc": { 
       "_id": "1234", 
       "_rev": "1-efaa6f87b907297b8faa3423c1abbe4b", 
       "acresowned": "2000", 
       "address": "6543288", 
       "age": "45", 
       "channels": "JAVATP", 
       "email": "Windows @gmail. com", 
       "gender": "Male", 
       "homephone": "37884321155", 
       "imageURL": "http://119.226.229.61:8080/abcd/media/0.28967773471958935IMAGE_FAR.jpg", 
       "mobile": "58899110", 
       "pincode": "334455", 
       "qualification": "be", 
       "regularcrops": "", 
       "seasonalcrops": "", 
       "seedbrands": "wheat", 
       "soiltype": "gtred", 
       "sourceofwater": "nadi", 
       "state": "maharashtra", 
       "username": "windows" 
      } 
     }, 
     { 
      "key": "123455", 
      "id": "123455", 
      "value": { 
       "rev": "1-bf67fc273b8e64723895d2caf7fb90d1" 
      }, 
      "doc": { 
       "_id": "123455", 
       "_rev": "1-bf67fc273b8e64723895d2caf7fb90d1", 
       "acresowned": "", 
       "address": "", 
       "age": "45", 
       "channels": "JAVATP", 
       "email": "[email protected]", 
       "gender": "Male", 
       "homephone": "", 
       "imageURL": "http://119.226.229.61:8080/abcd/media/0.2573327284771949IMAGE_FAR.jpg", 
       "mobile": "6326678990", 
       "pincode": "", 
       "qualification": "be", 
       "regularcrops": "", 
       "seasonalcrops": "", 
       "seedbrands": "", 
       "soiltype": "", 
       "sourceofwater": "", 
       "state": "", 
       "username": "win7" 
      } 
     }, 
     { 
      "key": "1424951086535", 
      "id": "1424951086535", 
      "value": { 
       "rev": "1-6f7d2dca1cc0045ec4f2d7d2aadfc31c" 
      }, 
      "doc": { 
       "_id": "1424951086535", 
       "_rev": "1-6f7d2dca1cc0045ec4f2d7d2aadfc31c", 
       "acresowned": "6", 
       "address": "addr", 
       "age": "56", 
       "channels": "JAVATP", 
       "email": "[email protected]", 
       "gender": "Male", 
       "homephone": "9999999999", 
       "imageURL": "", 
       "mobile": "1111111111", 
       "pincode": "751059", 
       "qualification": "ed qual", 
       "regularcrops": "reg", 
       "seasonalcrops": "seasonal", 
       "seedbrands": "seed", 
       "soiltype": "soil", 
       "sourceofwater": "water", 
       "state": "state", 
       "username": "amitabh" 
      } 
     } 
    ], 
    "total_rows": 4, 
    "update_seq": 10 
} 

Мой фрагмент кода:

function setsyncUserDetails(tx) { 

    alert("globalsyncedinData: "+window.globalsyncedinData); 
    alert('into setsyncUserDetails method'); 
    var obj = JSON.parse(window.globalsyncedinData); 
    alert('parsed string into json object is:'+obj); 
    alert("First key is:"+ obj.rows[0].key); 
    ... 
} 

При выполнении, я получаю окно предупреждения до "разобран строку в объект JSON является [объект Object]". И он останавливается. Я не могу получить доступ к ключевым значениям, и я не получаю после него окно предупреждения, т. Е. Предупреждение («Первый ключ:» + obj.rows [0] .key); не открывается.

Я разрабатываю приложение на платформе Android, поэтому мне нужно окно предупреждения. Я действительно хочу переменную, которая может получить доступ к «строкам» из globalsyncedinData, так что я могу использовать $ .each() для итерации по каждой строке. Как я могу это сделать?

+0

Что вы ожидаете произойдет? – CompanyDroneFromSector7G

+0

Разрабатываю приложение на платформе Android, поэтому мне нужно окно предупреждения. Я действительно хочу переменную, которая может получить доступ к «строкам» из globalsyncedinData, так что я могу использовать $ .each для итерации по каждой строке. Как я могу это сделать? – shivi

+0

Если вы разрабатываете Android, вы можете подключить телефон к USB-порту и использовать консоль Chrome вашего компьютера для отладки (перейдите к chrome: // inspect/# devices). Это будет гораздо удобнее, чем оповещения. Там вы поймете, что случилось с вашим json. –

ответ

0

Проверьте рабочую скрипку здесь. http://jsfiddle.net/eqrmmmkz/

var text = '{"rows":[ {"key":"1234","id":"1234","value":{"rev":"1-efaa6f87b907297b8faa3423c1abbe4b"},"doc":{"_id":"1234","_rev":"1-efaa6f87b907297b8faa3423c1abbe4b","acresowned":"2000","address":"6543288","age":"45","channels":"JAVATP","email":"Windows @gmail. com","gender":"Male","homephone":"37884321155","imageURL":"http://119.226.229.61:8080/abcd/media/0.28967773471958935IMAGE_FAR.jpg","mobile":"58899110","pincode":"334455","qualification":"be","regularcrops":"","seasonalcrops":"","seedbrands":"wheat","soiltype":"gtred","sourceofwater":"nadi","state":"maharashtra","username":"windows"}} ,{"key":"123455","id":"123455","value":{"rev":"1-bf67fc273b8e64723895d2caf7fb90d1"},"doc":{"_id":"123455","_rev":"1-bf67fc273b8e64723895d2caf7fb90d1","acresowned":"","address":"","age":"45","channels":"JAVATP","email":"[email protected]","gender":"Male","homephone":"","imageURL":"http://119.226.229.61:8080/abcd/media/0.2573327284771949IMAGE_FAR.jpg","mobile":"6326678990","pincode":"","qualification":"be","regularcrops":"","seasonalcrops":"","seedbrands":"","soiltype":"","sourceofwater":"","state":"","username":"win7"}} ,{"key":"1424951086535","id":"1424951086535","value":{"rev":"1-6f7d2dca1cc0045ec4f2d7d2aadfc31c"},"doc":{"_id":"1424951086535","_rev":"1-6f7d2dca1cc0045ec4f2d7d2aadfc31c","acresowned":"6","address":"addr","age":"56","channels":"JAVATP","email":"[email protected]","gender":"Male","homephone":"9999999999","imageURL":"","mobile":"1111111111","pincode":"751059","qualification":"ed qual","regularcrops":"reg","seasonalcrops":"seasonal","seedbrands":"seed","soiltype":"soil","sourceofwater":"water","state":"state","username":"amitabh"}} ], "total_rows":4,"update_seq":10}'; 
obj = JSON.parse(text); 
document.getElementById("demo").innerHTML = obj.rows[0].key;  

.

ОБНОВЛЕНО:

http://jsfiddle.net/eqrmmmkz/1/

+0

Да! Он должен работать. Однако, когда я открываю приложение на мобильном устройстве, я должен получить окно предупреждения «Первый ключ - 1234»; которого я не получаю. :/ – shivi

+0

Какова структура, которую вы используете для разработки приложения? –

+0

Он отлично работает в jsfiddle, но не мой мобильный! Странно! :/ – shivi

Смежные вопросы