PDA

View Full Version : مشکل این خط کجاست (JSON)



NIMA_1981
یک شنبه 13 شهریور 1390, 22:00 عصر
سلام

من یک خط از برنامه که برای jquery نوشتم من به این شکل درست کار میکنه


data: "{'num1':'Naeim','num2':'Rezaeian'}",


این خط درست کار میکنه
اما وقتی بخوام ابن مقدار را از یک متغییر بگیره خطا میده
مثلا اینجوری

var mm = $("#txt_num1").val();
data: "{'num1':mm,'num2':'Rezaeian'}",

این خط را خطا میده میشه بگید مشکل از کجاست

mehdi.mousavi
یک شنبه 13 شهریور 1390, 23:13 عصر
سلام.
می تونید بدین شکل عمل کنید:


var data = {
'num1': $('#<%=txt_num.ClientID%>').val(),
'num2': 'Rezaeian'
};

var d = JSON.stringify(data);


موفق باشید.

NIMA_1981
یک شنبه 13 شهریور 1390, 23:19 عصر
مرسی

من اینجوری نوشتم حل شد
data: "{'num1':'" + $("#txt_num1").val() + "','num2':'" + $("#txt_num2").val() + "'}",



میشه بگید ان خط کارش جیه
JSON.stringify(data);

mehdi.mousavi
یک شنبه 13 شهریور 1390, 23:43 عصر
میشه بگید ان خط کارش جیه JSON.stringify(data);

JSON.stringify یک JSON Object رو به یک String تبدیل می کنه، در نتیجه دیگه نیازی نیست خودتون بصورت دستی Quotation ها روکنترل کنید. در کدی که شما نوشته اید، اگر فرض کنیم محتوای یکی از textbox ها، isn't باشه (یعنی حاوی حداقل یک Single Quote باشه)، اونوقت string ای که شما می سازید یک JSON String معتبر نخواهد بود...

موفق باشید.