我有这个JavaScript函数:
function prefixOneDropDown(){
var source = $('#prefix-one');
var selected = source.find('option[selected]');
var options = $('option', source);
var DefinitionList = '<dl id="dd-prefix-one" class="dropdown f-left"><dt><a href="#">' + selected.text() + '<span class="value">' + selected.val() + '</span></a></dt><dd><ul></ul></dd></dl>';
$(DefinitionList).insertAfter(source);
options.each(function(){ $("#dd-prefix-one dd ul").append('<li><a href="#"><span class="number-plate">' + $(this).text() + '</span><span class="value">' + $(this).val() + '</span></a></li>'); });
}
我想知道是否有办法在函数外声明var selected, options, DefinitionList
...然后将它们作为参数调用?
我尝试了很多不同的方法,但我遗漏了一些东西。
该函数在我的js中调用,如:prefixOneDropDown();
任何帮助都会得到极大的赞赏,谢谢
答案 0 :(得分:2)
function prefixOneDropDown(source, options, dl){
$(dl).insertAfter(source);
options.each(function(){ $("#dd-prefix-one dd ul").append('<li><a href="#"><span class="number-plate">' + $(this).text() + '</span><span class="value">' + $(this).val() + '</span></a></li>'); });
}
var source = $('#prefix-one'),
selected = source.find('option[selected]'),
options = $('option', source),
DefinitionList = '<dl id="dd-prefix-one" class="dropdown f-left"><dt><a href="#">' + selected.text() + '<span class="value">' + selected.val() + '</span></a></dt><dd><ul></ul></dd></dl>';
prefixOneDropDown(source, options, DefinitionList);