Javascript 如何使用jQuery生成选项数组?
我使用中的下一个代码块仅在选择某些菜单选项时显示特定的Javascript 如何使用jQuery生成选项数组?,javascript,jquery,arrays,Javascript,Jquery,Arrays,我使用中的下一个代码块仅在选择某些菜单选项时显示特定的div块。我不是jQuery专家,但我认为可以优化$.viewMap块,因此当我想在该菜单中添加更多选项时,无需每次重复$([])或$(“#price”).parent('div')部分。有什么建议吗 $.viewMap = { '' : $([]), '2' : $([]), '4' : $("#price").parent('div'), '7' : $("#price").parent('div') }; 更新
div
块。我不是jQuery专家,但我认为可以优化$.viewMap
块,因此当我想在该菜单中添加更多选项时,无需每次重复$([])
或$(“#price”).parent('div')
部分。有什么建议吗
$.viewMap = {
'' : $([]),
'2' : $([]),
'4' : $("#price").parent('div'),
'7' : $("#price").parent('div')
};
更新
我按照@epascarello的建议更新了代码:
var x = $([]);
var y = $("#price").parent('div');
$.viewMap = { '' : x, '2' : x, '4' : y, '7' : y };
但我想要这样的东西:
var x = $([]);
var y = $("#price").parent('div');
$.viewMap = {'null, 2' : x, '4, 7' : y};
最后,我更改了所有jQuery代码(感谢):
PHP数组如何应用于JavaScript?因此,在数组外部存储对它的引用,并在数组中引用变量<代码>风险值x=$(“#价格”).parent('div')代码>和
'4':x,'7':x
仅供参考,这是一个对象,而不是数组。LOL,是的,它是…:)当然<代码>如果($.viewMap[selected]){//do this}否则{//do this}
jQuery(document).ready(function($) {
var cat = ["4", "7"]; // option values for which a specific div block is displayed
$("#price").parent('div').hide();
$('#category').change(function(){
if($.inArray($('#category').val(), cat) > -1) {
$("#price").parent('div').show();
} else {
$("#price").parent('div').hide();
}
});
});