2011-01-20 79 views
0

我有這個JavaScript函數:如何將參數傳遞給我的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

爲什麼我想要的變量聲明的原因外面是有這些功能中的五個...所以只聲明一次 – Nasir 2011-01-20 14:12:49

回答

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); 
+0

我可能是錯的,但`select`和`option`沒有在函數中使用 – pimvdb 2011-01-20 14:31:52

相關問題