2012-05-16 69 views
1

我在一頁中有兩組輸入複選框。並且我爲每個設備添加了「檢查」功能,並且每個功能都有不同的功能。 我會以身作則,在單個頁面中的兩組複選框的複選框選中功能,無法單獨調用函數

<div id="set1"> 
for(var i=0;i<n;i++) 
<input type="checkbox" class=filter[i] onclick="clickCheck(filter[i])">array values 
} 
</div> 


<div id="set2"> 
(for var j=0;j<n;j++) 
<input type="checkbox" name="facets" value=array[j]>array values 
} 
</div> 

伊夫使用jQuery的功能,如

$("#set1 :checkbox").click(checkFacetSelectionCount);  
checkFacetSelectionCount() 
{ 
$('#set1 :input[type=checkbox]:checked').each(function() { 
        alert("Checked"); 
} 

clickCheck(s) 
{ 
if ($("#set2").is(':checked')) 
    { 
    alert(s); 
    } 
else 
    { 
    alert("Nothing Checked"); 
    } 

,這兩個功能獲得的點擊複選框,激活,什麼情況是,每當我點擊任何一組時,這兩組功能都會被激活。我怎樣才能防止這一點?我怎樣才能不同地調用這兩個函數?

+0

能否請您顯示您的實際'的ClickCheck()'函數?另外,你的例子「jQuery函數」不是有效的函數聲明或調用,所以你很難看到你想要做什麼 - 假設這些代碼片段已被更正,你從哪裏調用它們? (雖然在這種情況下提出問題代碼的簡化版本通常是一個好主意,但它是如此簡化,以至於我無法弄清楚你在做什麼。) – nnnnnn

+0

Ive編輯了我的問題部分。 – user1371896

+0

它是什麼你想在點擊複選框時發生?如果你在你的html中嵌入了'onclick =「clickCheck(filter [i])''並且也使用'$(」#set1:checkbox「)。click(checkFacetSelectionCount)'then yes,'clickCheck()'和每當點擊任何「set1」複選框時,都會調用checkFacetSelectionCount() - 你問如何防止這種情況,但我收集答案並不像從代碼中刪除一個那麼簡單? – nnnnnn

回答

1

我認爲

第一個應該

$('#set1 :input[type=checkbox]:checked') 
{function body;} 

和其他應

$('#set2 :input[type=checkbox]:checked') 
    ^2 instead of 1 
{function body;} 
+0

我很抱歉,那是我的打字錯誤...我使用的是set2本身......感謝您指出有問題的錯誤,我編輯了問題部分,現在您能夠幫助我解決原始問題了嗎? – user1371896

相關問題