3
我知道这个问题已被询问很多次,并且我已经找到了一些关于如何从复选框中获得text()
的答案,但是当我试图仅从选中的文本中获取文本时,我的代码出现了一些错误。如果选中复选框,如何获取文本()?
考虑以下代码:
$('input.choose-age').on('change', function() {
$('input.choose-age').not(this).prop('checked', false);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="checkbox">
<label for='wom-10-14' class="checkbox-inline">
\t <input type="checkbox" id='wom-10-14' class='choose-age' checked />10-14
</label>
<label for='wom-15-19' class="checkbox-inline">
\t <input type="checkbox" id='wom-15-19' class='choose-age' />15-19
</label>
<label for='wom-10-19' class="checkbox-inline">
\t <input type="checkbox" id='wom-10-19' class='choose-age' />10-19
</label>
</div>
我想,如果被选中从复选框选择text()
并保存到一个var
。我使用d3.js
和mapbox
来运行mapDraw函数,因此如果选中了不同的复选框,我想更改指示符。
我知道,这个例子返回文本,但是是不是我要找:
var ageLab = $('label[for=wom-10-14]').text();
这是我的尝试:
var ageLab = $('input:checkbox:checked').map(function() {
return $(this).prev('label.checkbox-inline').text();
}).get();
console.log(ageLab);
来源:example 1
它返回:
Array[1]
0: ""
length: 1
var ageLab = $('.choose-age:checked').text(this.checked ? $(this).text() : '');
来源:example 2
然而,doesn't返回文本。
有没有更好的方法来检查时从复选框中获得text()
。
在此先感谢!
优秀。谢谢,@Praveen。 'span'好得多,':radio'也是更好的选择。 – estebanpdl