我有下面的JSON,需要迭代通過「規則」對象。我似乎永遠無法正確地調用它來訪問不僅僅是最後一條規則。實施json迭代
如果有人能在正確的方向指向我,我會非常感激
var rules = [{
"rule":[{
"fields":["CASE.PROSECUTED_FLAG","CASE.RESTITUTION_SIGNED"],
"conditions":["N","Y"],
"actions":"required",
"action_fields":["test1","test2"]
}],
"rule":[{
"fields":["CASE.PROSECUTED_FLAG","CASE.RESTITUTION_SIGNED"],
"conditions":["N","N"],
"actions": "required",
"action_fields": ["test3", "test4"]
}],
"rule":[{
"fields":["CASE.PROSECUTED_FLAG"],
"conditions":["Y"],
"actions": "required",
"action_fields": ["test5"]
}]
}];
function rulesControl() {
alert(rules.length);
for (var rule in rules) {
var xfields = rules[rule].rule.fields;
var conditions = rules[rule].rule.conditions;
var actions = rules[rule].rule.actions;
var action_fields = rules[rule].rule.action_fields;
//test the fields (if success, mark them, else clear them)
if (validateRule(xfields, conditions)) {
rulesAction(actions, action_fields);
} else {
ruleActionMakeClear(action_fields);
}
}
}
在json對象中,是否真的可以有幾個具有相同名稱(「規則」)的屬性?改用數組。嗯...也許這是一個答案... – LosManos 2012-07-26 19:27:36
你不應該使用'for..in'來迭代一個數組。 – ThiefMaster 2012-07-26 19:30:46