2017-05-25 61 views
0

我有多個複選框,並試圖只獲取選中複選框,但在應用jquery時,我無法訪問其範圍之外的值。這是因爲我通過ajax請求,並沒有做任何事情。如何從jquery獲取訪問值

我的代碼的html:

<div name="state" id="state"> 
<label class="checkbox-inline"> 
<input type="checkbox" id="offer1" name="offer" value="Monday">Monday 
</label> 
<label class="checkbox-inline"> 
<input type="checkbox" id="offer2" name="offer" value="Tuesday">Tuesday 
</label> 
<label class="checkbox-inline"> 
<input type="checkbox" id="offer3" name="offer" value="Wednesday">Wednesday 
</label> 
<label class="checkbox-inline"> 
<input type="checkbox" id="offer4" name="offer" value="Thursday">Thursday 
</label> 
<label class="checkbox-inline"> 
<input type="checkbox" id="offer5" name="offer" value="Friday">Friday 
</label> 


</div> 
<button name="submit" onclick="continued()" type="submit" class="btn btn-primary btn-block" style="font-size:18px;">Continue</button> 

<script> 
function continued(){ 
    var s=$("#school").val(); 
    var st=$("#student").val(); 
    var selected = []; 
    var sThisVal; 
var v =$('#state input:checkbox').each(function (elem) { 
sThisVal = (this.checked ? $(this).val() : ""); 
//alert(sThisVal); 
return sThisVal; 

}); 

alert(v[0]); 




} 
</script> 

回答

1

.each()沒有返回類型。您應該使用.map()功能與.get()這裏一起:

var v = $('#state input:checkbox').map(function(elem) { 
    var sThisVal = (this.checked ? $(this).val() : ""); 
    return sThisVal; 
}).get(); 
+0

確定日Thnx ......... – user3162878

1

function continued() { 
 
    var selected = []; 
 
    $("#state input[type='checkbox']:checked").each(function() { 
 
    selected.push(this.value); 
 
    }); 
 
    console.log(selected); 
 
    return selected; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="state"> 
 
    <label class="checkbox-inline"> 
 
<input type="checkbox" value="Monday">Monday 
 
</label> 
 
    <label class="checkbox-inline"> 
 
<input type="checkbox" value="Tuesday">Tuesday 
 
</label> 
 
    <label class="checkbox-inline"> 
 
<input type="checkbox" value="Wednesday">Wednesday 
 
</label> 
 
    <label class="checkbox-inline"> 
 
<input type="checkbox" value="Thursday">Thursday 
 
</label> 
 
    <label class="checkbox-inline"> 
 
<input type="checkbox" value="Friday">Friday 
 
</label> 
 
</div> 
 
<button onclick="continued()">Continue</button>