関数の先頭に定義された変数と、その変数を参照する JSON オブジェクトがそのすぐ下にあります。クリック イベント、いくつかのループ、匿名関数の後で、最初の変数の値を更新し、JSON オブジェクトのプロパティを参照して、新しい値を持つことを期待していますが、これは機能しません。
私のコードは次のようになります。
var errorval = "Not set";
var rules = {
firstRule : {
name : 'example',
message : 'Needs to be '+errorval+' characters long'
}
}
$('.button').on('click', function(){
for(var foo in bar) {
$.each(foo, function(){
errorval = 3;
// ALERTS "Needs to be Not set characters long"
alert(rules.firstRule.message);
});
}
});
errorval
そのため、コードのこの時点で、rules
オブジェクトがプロパティに新しい値を持つように更新する方法を尋ねていmessage
ます。