2012-01-23 29 views
0

好吧,所以我可能很容易,但我似乎無法弄清楚。我有一個函數,但我仍然需要內聯調用函數。我想知道是否有辦法把它全部放在函數中。現在我的功能看起來是這樣的:Jquery Javascript - 讓內聯js功能

function ddItem(el) { 
$(el).closest(".ddSelectHeader").find("input").attr({ 
    value : $(el).text() 
}) 
} 

然後調用這個函數內聯是這樣的:

<div class="ddContainer"> 
<div class="ddSelectHeader"><input name="" type="text" /> 
<div class="ddSubmenu"> 
    <a href="#" onclick="ddItem(this)">Item 1</a><br /> 
    <a href="#" onclick="ddItem(this)">item 2</a> 
    </div> 
</div> 

好了,所以我試圖做一個簡單的下拉但div的,而不是傳統的UL李。上面寫的方式工作正常,但我希望有一種方法可以將onlcick取出,以便在ddSubmenu中單擊的任何鏈接都將填充輸入字段。這樣我就不必在內聯或HTML中調用它。

感謝您的幫助。

回答

4
$(document).ready(function() { 
    $(".ddSubmenu a").click(function(){ 
     var $this = $(this); 

     $this.closest(".ddSelectHeader").find("input").val($this.text()); 
    }); 
}) 
+0

+1 docReady –

0
$('.ddSubmenu a').click(function(){ 
    ddItem(this); 
}); 
1
$(function(){ 
    $('.ddSubmenu > a').click(function(){ 
     var self = $(this); 
     self.closest(".ddSelectHeader").find("input").val(self.text()); 
    }); 
}); 
+0

+1的價值,我固定的結構,但錯過他究竟在做什麼。 –

+0

@JamesMontagne - 你仍然可以修改你的答案並使其更好。 – ShankarSangoli

+0

@ShankarSangoli會做。在接受答案之前,總是感到有趣的修改我的回答。 –