javascript获取复选框的值,如果选中但没有点击按钮
我在项目中间受到了打击,请帮助..
如何从类名或通过名称或通过警告获取复选框值,以便我可以传递特定值...
我很抱歉问。我是新的jquery和javascript ..
这是我的HTML ...
<input type="checkbox" name='cbox' value="red" class="theClass"/>red
<input type="checkbox" name='cbox' value="green" class="theClass"/>green
<input type="checkbox" name='cbox' value="yer" class="theClass"/>yer
<input type="checkbox" name='cbox' value="asdasd" class="theClass"/>asdasd
<input type="checkbox" name='cbox' value="radgdfged" class="theClass"/>radgdfged
$(function(){
$('input[type=checkbox]').on('change', function() {
alert($(this).val());
console.log($(this).val());
});
});
我用Google搜索了很多...但是每次点击按钮都会获得所有复选框值。 我使用onclick按钮获取值....但是在不使用按钮的情况下获取值... 如果选中复选框,我的担忧就是获取值
例如:如果我检查了红色,我应该得到警告&#39;红色&#39; .....
答案 0 :(得分:12)
jQuery:
$('input[type=checkbox]').on('change', function() {
console.log($(this).val());
});
<强>使用Javascript:强>
var cbs = document.querySelectorAll('input[type=checkbox]');
for(var i = 0; i < cbs.length; i++) {
cbs[i].addEventListener('change', function() {
console.log(this.value);
});
}
编辑:
如果仅在选中复选框时才需要该值。
jQuery:
$('input[type=checkbox]').on('change', function() {
if($(this).is(':checked'))
console.log($(this).val());
});
Javascript:
var cbs = document.querySelectorAll('input[type=checkbox]');
for(var i = 0; i < cbs.length; i++) {
cbs[i].addEventListener('change', function() {
if(this.checked)
console.log(this.value);
});
}
P.S。为jQyery把你的代码放在里面:
$(function() {
//code here
});
答案 1 :(得分:3)
尝试:
<input type="checkbox" name='cbox' value="red" class="theClass" onchange="alert(this.value)"/>red
修改强>
<input type="checkbox" name='cbox' value="red" class="theClass" onchange="this.checked?alert(this.value):null"/>red
修改强>
提醒所有选中的输入值:
$('input[type=checkbox]').on('change', function() {
if($(this).is(':checked')){
var values = [];
$.each($('input:checked'),function(index,input){
values.push(input.value);
});
alert(values.join(','));
}
});
答案 2 :(得分:3)
如果您需要更换所有选中的复选框,可以使用:
$('.theClass').change(function(){
alert($('.theClass:checked').map(function(){return this.value}).get())
});
<强> Working Demo 强>
答案 3 :(得分:2)
<强> HTML 强>
<input type="checkbox" name='cbox' value="red" class="theClass" checked/>
<强>的jQuery 强>
$(function() {
$(":checkbox").each(function() {
alert($(this).val())
});
});
答案 4 :(得分:0)
如果选中没有点击按钮,则Javascript获取复选框的值 这段代码工作正常。试试这个
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery Get Values of Selected Checboxes</title>
<script type="text/javascript" src="http://code.jquery.com/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("input[type=checkbox]").change( function() {
var values = [];
$.each($('input:checked'),function(index,input){
values.push(input.value);
});
alert(values.join(','));
var n = $( "input:checked" ).length;
alert(n);
});
});
</script>
</head>
<body>
<form id="booking_form">
<input type="checkbox" name="bType" id="bType" value="A,200"> Type A - USD200<br>
<input type="checkbox" name="bType" id="bType" value="B,150"> Type B - USD150<br>
<input type="checkbox" name="bType" id="bType" value="C,100"> Type C - USD100<br>
<input type="checkbox" name="bType" id="bType" value="D,50"> Type D - USD50<br>
</form>
</body>
</html>
Preeti Dua