Monday, May 20, 2024
 Popular · Latest · Hot · Upcoming
63
rated 0 times [  65] [ 2]  / answers: 1 / hits: 39372  / 11 Years ago, fri, january 10, 2014, 12:00:00

How can i access this response from server using javascript.
This is the json encoded data.



      [{cid:1234,city:value1,district:value2,state:value3}]


Thanks in advance.



This is the ajax code:



 function cityauto(ctid){
var city = document.getElementById(ctid);
if(city.value.length > 3){
$.ajax({
type: GET,
url: city.php,
data: {term: city.value},
success: function (data){
alert(data);
}
});
}


Html code:



   <input type=text name=city id=cty onblur=cityauto(this.id); />


onblur i am getting above response from php file in alert box now i need to access that values in javscript.


More From » javascript

 Answers
5

Assuming the JSON is returned as a string:



var data = '[{cid:1234,city:value1,district:value2,state:value3}]';
// Parse the data as json
var obj = JSON.parse(data)
// Access the ojbect:
console.log(obj);
console.log(obj[0]); // == Object {cid: 1234, city: value1, district: value2, state: value3}
console.log(obj[0].cid); // == 1234


The [0] is to access the first object inside the JSON, which is an array. Then you just add .name, where 'name' is the name of the variable you want. (like .cid).



If the JSON is already a object, you can skip the JSON.parse():



var obj = [{cid:1234,city:value1,district:value2,state:value3}];


And access it like the example above.

(In that case, this question is more about accessing JavaScript objects, instead of JSON)



In your case, you can access the data like this:



success: function (data){
var obj = JSON.parse(data);
// Do stuff with `obj` here.
}

[#73263] Thursday, January 9, 2014, 11 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
josefn

Total Points: 251
Total Questions: 93
Total Answers: 84

Location: Senegal
Member since Fri, Aug 21, 2020
4 Years ago
;