我想建立一个json对象在比较的javascript/jquery中。下面是我有寻找文本来比较真或假
HTML:
<div class="field">
<div>size</div>
<div>large</div>
<div>medium</div>
<div>number</div>
</div>
JS:
selectedObj = {
'fieldSize':false,
'sizeXSmall':false,
'sizeSmall':false,
'sizeMedium':false,
'sizeLarge':false,
'sizeXLarge':false,
'fieldName':false,
'fieldNum':false
};
if(jQuery('.field div:contains("size")')){selectedObj['fieldSize'] = true}
if(jQuery('.field div:contains("xs")')){selectedObj['sizeXSmall'] = true}
if(jQuery('.field div:contains("small")')){selectedObj['sizeSmall'] = true}
if(jQuery('.field div:contains("medium")')){selectedObj['sizeMedium'] = true}
if(jQuery('.field div:contains("large")')){selectedObj['sizeLarge'] = true}
if(jQuery('.field div:contains("xl")')){selectedObj['sizeXLarge'] = true}
if(jQuery('.field div:contains("name")')){selectedObj['fieldName'] = true}
if(jQuery('.field div:contains("number")')){selectedObj['fieldNum'] = true}
所以最好我最终会得到一个对象,它看起来像这样:
selectedObj = {
'fieldSize':true,
'sizeXSmall':false,
'sizeSmall':false,
'sizeMedium':true,
'sizeLarge':true,
'sizeXLarge':false,
'fieldName':false,
'fieldNum':true
};
我,而不是结束与一切事物都是真实的物体相对立。这里有一个例子:
http://jsfiddle.net/vz600nd7/
此外,当我安慰的前记录它,它看起来像这样经过:
它看起来像“预览”时给予正确的信息,但实际观点不是。
'的jQuery(”字段的div:包含( “大小”) ')'返回一个总是为真的jQuery对象,所以''jQuery('。field div:contains(“size”)'')' – 2014-09-26 06:15:42
当记录对象时不要相信'console.log'。它倾向于提供对象的实时视图,因此即使在* console.log运行后属性被更新了,控制台仍然显示更新的值。 – 2014-09-26 06:16:12