我这里有一个这样的装置:
$(document).on("click", "#updateLocation", function() {
$('.radio_btn').each(function(index) {
console.log($(this).val());
});
});<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="progressForm">
<input type="text" readonly="readonly" value="question 1">
<label><input type="radio" name="isActive[1]" value="1" class="radio_btn">done</label>
<label><input type="radio" name="isActive[1]" value="0" class="radio_btn">not yet done</label>
<input type="text" readonly="readonly" value="question 2">
<label><input type="radio" name="isActive[12]" value="1" class="radio_btn">done</label>
<label><input type="radio" name="isActive[12]" value="0" class="radio_btn">not yet done</label>
<input type="text" readonly="readonly" value="question 3">
<label><input type="radio" name="isActive[35]" value="1" class="radio_btn">done</label>
<label><input type="radio" name="isActive[35]" value="0" class="radio_btn">not yet done</label>
<button type="button" id="updateLocation">Update</button>
</form>
正如您所看到的,name-属性并不遵循关于数字索引的某种模式。然而,我有一个单选按钮"OK“和"NOT OK”。因为它们有相同的名称,所以只能检查其中一个选项。
现在,我想在jQuery中评估这些值。
正如您可能已经看到的,这是无法工作的,因为它似乎是(如预期的)覆盖以前的值。我需要处理每个复选框,因为这两个值都是有效的,并且需要插入到我的DB中。
如何从单选按钮中获得值(无论是否选中)?
假设
在我的each-function中,我应该得到值1、0、1。也许我只是盲目地看到了解决方案,但对我来说,这似乎是非常基本的。
另外,我是否可以得到索引(1,12,35.)以某种方式从当前的迭代复选框中?
发布于 2017-03-14 13:20:26
选择要对其进行循环的:checked收音机,并使用substring获取索引:
$(document).on("click", "#updateLocation", function() {
$('.radio_btn:checked').each(function(index) {
var name = $(this).attr('name');
console.log(name.substring(name.indexOf('[') + 1, name.length - 1));
console.log($(this).val());
});});<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="progressForm">
<input type="text" readonly="readonly" value="question 1">
<label><input type="radio" name="isActive[1]" value="1" class="radio_btn">done</label>
<label><input type="radio" name="isActive[1]" value="0" class="radio_btn">not yet done</label>
<input type="text" readonly="readonly" value="question 2">
<label><input type="radio" name="isActive[12]" value="1" class="radio_btn">done</label>
<label><input type="radio" name="isActive[12]" value="0" class="radio_btn">not yet done</label>
<input type="text" readonly="readonly" value="question 3">
<label><input type="radio" name="isActive[35]" value="1" class="radio_btn">done</label>
<label><input type="radio" name="isActive[35]" value="0" class="radio_btn">not yet done</label>
<button type="button" id="updateLocation">Update</button>
</form>
https://stackoverflow.com/questions/42786875
复制相似问题