2016-10-22 79 views
2

其實我試圖得到所有未勾選的複選框值,但標題= 1的條件..請help.my jquery代碼是。如何獲取未勾選的複選框值。與Id條件。

var uncheckedValues = $('input[type="checkbox"][name="ing[]"][title= "1"]:not(:checked)').map(function() { return this.value; }).get(); 

和我的複選框代碼是

<input class="badgebox" type="checkbox" onClick="addprice(<?php echo $total; ?>,<?php echo $addingri->id; ?>,'<?php echo $pprod_material->name; ?>')" id="<?php echo $addingri->id; ?>" value="<?php echo $pprod_material->id; ?>*<?php echo $addingri->price; ?>*<?php echo $addingri->name; ?>" name="ing[]" <?php if($pprod_material->id == 1) { echo "checked";} ?> title="<?php echo $pprod_material->id; ?>" > 

回答

2

使用$("input[type='checkbox'][name='ing[]'][title= '1']:not(:checked)")選擇讓有title="1"所有未選中的複選框。

請檢查下面的工作片段。

$(document).ready(function(){ 
 
    //On page load 
 
    uncheckedChk(); 
 

 
    //on checkbox change 
 
    $("input[type='checkbox'][name='ing[]'][title= '1']").on("change",function(){ 
 
    uncheckedChk(); 
 
    }); 
 
}); 
 

 
//Function to identify all the unchecked checkbox with title=1 
 
function uncheckedChk(){ 
 
    var not_checked = [] 
 
    $("input[type='checkbox'][name='ing[]'][title= '1']:not(:checked)").each(function(){ 
 
    not_checked.push($(this).val()); 
 
    }); 
 
    console.log(not_checked); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="checkbox" name="ing[]" value="check-1" title="1" checked><br/> 
 
<input type="checkbox" name="ing[]" value="check-2" title="1" checked><br/> 
 
<input type="checkbox" name="ing[]" value="check-2" title="1" ><br/> 
 
<input type="checkbox" name="ing[]" value="check-3" title="1"><br/> 
 
<input type="checkbox" name="ing[]" value="check-4" title="2" ><br/> 
 
<input type="checkbox" name="ing[]" value="check-5" title="1" ><br/>

0

的jQuery不包括未經檢查的選擇,這就是爲什麼我們要反轉:檢查選擇:

喜歡的東西。

$("input:checkbox:not(:checked)")