2016-01-17 519 views
2

我想查看是否已選中特定div中的任何複選框,以便繼續處理我正在處理的多階段表單。目前,無論是否選中複選框,我都會收到「已選擇平鋪」提醒。如何檢查是否有任何複選框已被選中

HTML代碼

<div class='material' id='material1'> 
    <a class='product'><div class='tiles_bg' style='background:url(media/images/tile2.jpg);'><input class='select_all' id='tile' type='checkbox' name='1marm' value='Verde Guatemala'></div><p>Verde Guatemala</p></a> 
    <a class='product'><div class='tiles_bg' style='background:url(media/images/tile1.jpg);'><input class='select_all' id='tile' type='checkbox' name='1marm' value='Bianco Carrara'></div><p>Bianco Carrara</p></a> 
</div> 

<button type="button" class="nasta" onClick="processStep1()">Nasta</button> 

jQuery代碼

var tile; 
function _(x){ 
    return document.getElementById(x); 
} 

function processStep1(){ 
    tile = _("tile").value; 
    if(!("tiles_bg input:checked").length) { 
    /* _("step1").style.display = "none"; 
     _("step2").style.display = "block"; */ 
     alert(tile); 
    } else { 
     alert("Tiles selected");  
    } 
} 
+1

你怎麼能有兩個ID(S)使用相同的值(標題)?不是身份證應該是一個獨特的屬性? –

+1

if($(「#checkboxid」)。(「:checked」))alert(「Tiles selected」); –

+0

謝謝你們的幫助,找到了解決辦法。 – ChriChri

回答

0

我的解決辦法是使用類而不是ID的:

($(」。checkboxclass 「)爲(」: ))警報(「Tiles selected」);

0

我的建議是:

var tile; 
 
function _(x){ 
 
    return document.getElementById(x); 
 
} 
 

 
function processStep1(){ 
 
    tile = _("tile").value; 
 
    if(!$('#material1').find("input.select_all:checked").length) { // look for checked inside div 
 
    /* _("step1").style.display = "none"; 
 
       _("step2").style.display = "block"; */ 
 
    alert(tile); 
 
    } else { 
 
    alert("Tiles selected"); 
 
    } 
 
}
<script src="http://code.jquery.com/jquery-1.11.3.js"></script> 
 

 

 
<div class='material' id='material1'> 
 
    <a class='product'><div class='tiles_bg' style='background:url(media/images/tile2.jpg);'><input class='select_all' id='tile' type='checkbox' name='1marm' value='Verde Guatemala'></div><p>Verde Guatemala</p></a> 
 
    <a class='product'><div class='tiles_bg' style='background:url(media/images/tile1.jpg);'><input class='select_all' id='tile' type='checkbox' name='1marm' value='Bianco Carrara'></div><p>Bianco Carrara</p></a> 
 
</div> 
 

 
<button type="button" class="nasta" onClick="processStep1()">Nasta</button>

相關問題