2009-10-10 74 views
1

我使用jQuery的星級插件:http://www.fyneworks.com/jquery/star-rating/jQuery的星級插件和jQuery點擊功能

我可能會得到一些HTML代碼:

<form name="api-disable"> 
    <input type="radio" class="star {split:2}" name="api-readonly-test" value="1"/> 
    <input type="radio" class="star {split:2}" name="api-readonly-test" value="2"/> 
    <input type="radio" class="star {split:2}" name="api-readonly-test" value="3"/> 
    <input type="radio" class="star {split:2}" name="api-readonly-test" value="4"/> 
    <input type="radio" class="star {split:2}" name="api-readonly-test" value="5"/> 
    <input type="radio" class="star {split:2}" name="api-readonly-test" value="6"/> 
    <input type="radio" class="star {split:2}" name="api-readonly-test" value="7"/> 
    <input type="radio" class="star {split:2}" name="api-readonly-test" value="8"/> 
    <input type="radio" class="star {split:2}" name="api-readonly-test" value="9"/> 
    <input type="radio" class="star {split:2}" name="api-readonly-test" value="10"/> 
    <input type="button" value="Submit &raquo;" onClick=" 
    $(this).next().html($(this.form).serialize() || '(nothing submitted)'); 
    "/> 
    <span></span> 
</form> 

這工作得很好,但如果我嘗試調用我自己的功能我的功能不警報。例如:

$('.star').click(function() { 
    alert('test'); 
}); 

我也嘗試安裝一個id,使該點擊功能,但仍沒有運氣。如果我從按鈕中刪除星級,那麼我的功能將起作用。所以看起來這個插件中的一些代碼阻止了外部函數?我需要做什麼來調用我自己的功能?

回答

1

文檔建議您可以add a click callback,以及一些其他的活動,當你激活插件:

$('.auto-submit-star').rating({ 
    callback: function(value, link){ 
    alert(value); 
    } 
}); 
+0

謝謝!我忘了那個頁面,顯然是在查看documentation.js,這是一羣亂七八糟的字符。 :P – Roger 2009-10-10 15:27:59

+0

是的,我也看到了API頁面 - 它什麼都沒有。該插件缺少文檔。 – Kobi 2009-10-10 17:19:03

+0

如果我爲每個輸入添加一個id,我可以用alert($(this).attr('id'))讀取回調函數中的id,但是如果用戶單擊取消按鈕,那麼我不能選擇任何東西。我在評分取消鏈接中向js文件添加了一個id,但仍然沒有運氣。有任何想法嗎? – Roger 2009-10-11 02:55:07