2013-09-25 70 views
2

嗨jquery夥計我有jqueryui.com/datepicker/ jquery datepicker。現在我想添加一些自定義功能。 第一個問題,如果我輸入我的頁面的源,我看不到打印的jquery代碼。 只有當我檢查元素(在歌劇中),我可以看到打印的HTML。我希望這不是一個問題..當我點擊Next(span)按鈕時,我想要做一些事情。我希望這不是問題。但問題是我無法將功能附加到span類。我試過如下:當我檢查元素出現jquery函數onclick(跨班級)jquery datepicker

$(document).ready(function() { 

$('.ui-icon.ui-icon-circle-triangle-e').click(function(){ 
window.alert("it works"); 
}); 
}); 

驗證碼:

<a class="ui-datepicker-next ui-corner-all ui-state-hover ui-datepicker-next-hover" data-handler="next" data-event="click" title="Next">ev 
    <span class="ui-icon ui-icon-circle-triangle-e">Next</span> 
    </a> 

如何可以點擊工作這個功能呢?

回答

4

你選擇錯

.ui-icon ui-icon-circle-triangle-e

查找與ui-icon類另一個元素中有ui-icon-circle-triangle-e類元素。

當你要選擇一個應用了多個類,他們需要通過一段.

使用

$("body").on('click', ".ui-icon.ui-icon-circle-triangle-e",function(){ 
    window.alert("it works"); 
}); 

或只是

$("body").on('click', ".ui-icon",function(){ 
    window.alert("it works"); 
}); 
+0

它是有道理的,但它不工作,是因爲它不打印在源代碼? – RobinHo

+0

@RobinHo @RobinHo通過編輯你的代碼,你取出了'$(「body」)。on'部分,因爲它將事件委託給已創建的新元素 –

+0

@RobinHo,編輯我的答案以顯示你的代碼應該看看 –

0

被分隔元素你沒有正確地調用它,它需要是:

$('.ui-icon.ui-icon-circle-triangle-e').click(function(){ 
    alert ('it works'); 
}); 

你做了一個空白,而不是jQuery中的兩個類之間的一個點。

+0

抱歉,這不起作用。是因爲它沒有打印在源代碼中? – RobinHo

+0

嗯,通常它應該工作。你把它放在就緒的功能? –

0
$(document).ready(function() { 

$('.ui-icon.ui-icon-circle-triangle-e').off('click').on('click',function(){ 
alert("Working"); 
}); 
}); 

如果您將事件直接附加到元素上,則更好地使用off和on。

乾杯!