Friday 29 November 2019

asp.net - jquery how to deserialize json object




How can you deserialize this json object below?



[{"id":"67","name":"TestString"}]


I tried to do this below but couldnt succeed...



success: function (data, status) {
$.each(data, function (dt) {


var mydata = data.d;

alert(mydata); // returns [{"id":"67","name":"TestString"}]

$("#txt_speciality").tokenInput("add", mydata.id);
});
}



here is the way I am creating the json object



[WebMethod]
public static string get_specialities(string ProfessionalID)
{
Database db = DatabaseFactory.CreateDatabase("Connection String2");
DbCommand dbCommand;
dbCommand = db.GetStoredProcCommand("Select_Professionals_Speciality");
db.AddInParameter(dbCommand, "prof_id", DbType.Int16, Convert.ToInt16(ProfessionalID));
IDataReader dr = db.ExecuteReader(dbCommand);

//[{ id: 3, name: "test3" }]
string return_str="[";
int i = 0;
while (dr.Read()) {
if (i > 0)
return_str += ",";
return_str += "{\"id\":\"" + dr["SpecialtyID"].ToString().Trim() + "\",\"name\":\"" + dr["SpecialtyName"].ToString().Trim() + "\"}";
i++;
}
return_str += "]";

return return_str;
}

Answer



You can do this with:



var mydata; // [{"id":"67","name":"TestString"}]

var json = $.parseJSON(mydata);



the json variable will contain the de-serialized json object


No comments:

Post a Comment

php - file_get_contents shows unexpected output while reading a file

I want to output an inline jpg image as a base64 encoded string, however when I do this : $contents = file_get_contents($filename); print &q...