2014-10-27 42 views
0

我有以下JS:點擊與曾經的Javascript/jQuery的

jQuery(function($){ 
    $("#product_filters_form_sizes_medeiumnnarrow").click() 
    $('menu.pills').on('click', 'a', function(event){ 
    $pill = $(this); 
    $('form.product_filters_form') 
     .find("input[value='"+$pill.data('filterId')+"']") 
     .attr('checked', false).trigger('change'); 
    }) 
}); 

這不正是我需要做的,這是選擇'#product_filters_form_sizes_mediumnarrow'唯一的問題是它不斷點擊和頁面每次重新加載。

我的問題是:有沒有辦法只點擊一次?

謝謝,任何幫助將不勝感激。

<li class="product_filter input required" id="product_filters_form_sizes_input"><fieldset class="choices"><legend class="label"><label>Sizes</label></legend><input id="product_filters_form_sizes_none" name="product_filters_form[sizes][]" type="hidden" value=""><ol class="choices-group"><li class="choice"><label for="product_filters_form_sizes_mediumnarrow"><input id="product_filters_form_sizes_mediumnarrow" name="product_filters_form[sizes][]" type="checkbox" value="medium/narrow"><i class="icon checked-indicator"></i>MEDIUM/NARROW</label></li> 
+2

我想你的意思是點擊一次,重新加載頁面,然後點擊一次,重新加載頁面...你看到問題了嗎? ;) – wwwmarty 2014-10-27 21:21:50

+0

「#product_filters_form_sizes_mediumnarrow」是做什麼的?它是否發回表單?也許,你可以使用'$('#product_filters_form_sizes_mediumnarrow')。focus()'來代替? – 2014-10-27 21:21:55

+0

因爲@wwwmarty表示在調用此.click()腳本之前您需要一些條件。這樣你就有了無限循環。 – 2014-10-27 21:29:43

回答

0

如果您需要一個在jQuery中執行某個操作的函數,它就稱爲一個函數。 你可能在尋找:

$('#product_filters_form_sizes_mediumnarrow').one('click'); 

您的問題可能發生,因爲重載正在發生,這是立即發生的線。

所以我給你的朋友的問題是點擊實際上做了什麼? 我想這是一個表單提交。

+0

,如果每次頁面重新加載,這會有什麼幫助? – charlietfl 2014-10-27 21:30:48

+0

這是我嘗試的第一件事,它不起作用,是的它是一個表單提交 – neo 2014-10-27 21:56:52