我正在使用由Raphael构建的svg,并使用表单使其中的部分内容可编辑。
我的路径变量类似于以下内容:
uk.isle_of_man
uk.republic_of_ireland
uk.england
和输入字段如:
<input id="england-form" type="text" name="england">
我正在使用以下代码根据选择的输入字段更新填充。它对于id工作正常,但我正在使用var b = $(this).attr("name");
做一些愚蠢的事情,并尝试使用它来定位变量属性。这是代码:
$('#form').find('input').focus(function(){
var a = $(this).attr("id");
var b = $(this).attr("name");
$('#'+a).live('change', (function() {
var value = $(this).val();
uk.(b).color = (value);
}));
我的意图是uk.(b).color
相当于uk.england.color
。知道我做错了什么吗?如果我使用uk.england
格式,一切正常。
答案 0 :(得分:1)
当您使用.
时,它会在b
内搜索名为uk
的媒体资源。
要搜索变量值,您必须使用[]
。
所以,如果我有以下物品。
var 'uk' = {
'england': {
color: 'green'
},
'b': {
color: 'wrong'
}
};
当我使用uk.(b).color
时。我得到'wrong'
要'green'
使用uk[b].color
。