Javascript 在$中创建新的关联对象。每个
我认为这个JavaScript应该可以工作,但它似乎不起作用。我能做些什么来修复它 我也愿意用其他方法来做到这一点。我只想返回一个JSON字符串,其中包含变量名(cn、sc、fn)及其值(例如,Javascript 在$中创建新的关联对象。每个,javascript,jquery,json,Javascript,Jquery,Json,我认为这个JavaScript应该可以工作,但它似乎不起作用。我能做些什么来修复它 我也愿意用其他方法来做到这一点。我只想返回一个JSON字符串,其中包含变量名(cn、sc、fn)及其值(例如,var cn=$('#deFNIN').val();——所以:“cn”:“MacDonalds”,“sc”:“Mac”) HTML: js/jQ: 变量objFields={ 'cn':{'id':'deCoNameIN','required':'True','title':'Company Na
var cn=$('#deFNIN').val();
——所以:“cn”:“MacDonalds”,“sc”:“Mac”
)
HTML:
js/jQ:
变量objFields={
'cn':{'id':'deCoNameIN','required':'True','title':'Company Name'},
'sc':{'id':'deShortCoIN','required':'True','title':'Short Co-name'},
'fn':{'id':'deFNIN','required':'false','title':'Contact first name'},
};
var arrDistinfo=[];
$.each(objFields,function(\ux,varname){
tmp=$(“#”+varname.id).val().trim();
警报('Varname:'++'Val:'+tmp);
arrDistinfo.push({uu:tmp});
});
var xx=JSON.stringify(arrDistinfo);
警报(xx);
所需的输出应如下所示:
[“cn”:“Macdonalds”,“cs”:“Macs”,“fn”:“Fred”]
您不能使用像这样的对象键这样的变量(在您的情况下,{uU:tmp}
与{“:tmp}
相同),您需要数组表示法:
var objFields={
“cn”:{
'id':'deCoNameIN',
“必需”:“True”,
“标题”:“公司名称”
},
“sc”:{
'id':'deShortCoIN',
“必需”:“True”,
“标题”:“简称”
},
“fn”:{
“id”:“deFNIN”,
“必需”:“false”,
“标题”:“联系人姓名”
},
};
var arrDistinfo=[];
$.each(objFields,function(\ux,varname){
tmp=$(“#”+varname.id).val().trim();
警报('Varname:'++'Val:'+tmp);
var obj={};
obj[]=tmp;
arrDistinfo.push(obj);
});
var xx=JSON.stringify(arrDistinfo);
警报(xx)代码>
产生如下输出的
:[{“cn”:“Macdonalds”},{“cs”:“Macs”},{“fn”:“Fred”}]
。如果我想让它看起来像这样怎么办:[“cn”:“Macdonalds”,“cs”:“Macs”,“fn”:“Fred”]
?(我已经更新了问题以反映——很抱歉,我之前不清楚)您必须将其设置为一个这样的字符串。JS中没有像PHP.Shomz这样的关联数组,非常感谢。正是我需要的。投票表决^77。但事实证明,我走的是正确的道路--。如果没有你的例子,我永远不会想出解决方案:var arrDistinfo={}
而不是var arrDistinfo=[]
不客气,很高兴我能帮上忙!:)是的,您在使用标准数组时遇到了问题,但我相信您永远不会犯同样的错误。
HTML:
<input id="deCoNameIN" type="text" value="MacDonalds" /><br>
<input id="deShortCoIN" type="text" value="Macs" /><br>
<input id="deFNIN" type="text" value="Fred" /><br>
js/jQ:
var objFields = {
'cn': { 'id':'deCoNameIN', 'required':'True', 'title':'Company Name'},
'sc': { 'id':'deShortCoIN', 'required':'True', 'title':'Short Co name' },
'fn': { 'id':'deFNIN', 'required':'false', 'title':'Contact first name' },
};
var arrDistinfo = [];
$.each(objFields,function(_, varname){
tmp = $("#"+varname.id).val().trim();
alert('Varname: ' +_+' Val: '+tmp);
arrDistinfo.push({_ : tmp});
});
var xx = JSON.stringify(arrDistinfo);
alert(xx);