首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jquery中的多个单选按钮(同名)处理

jquery中的多个单选按钮(同名)处理
EN

Stack Overflow用户
提问于 2017-03-14 13:07:16
回答 1查看 1.6K关注 0票数 0

我这里有一个这样的装置:

代码语言:javascript
运行
复制
$(document).on("click", "#updateLocation", function() {
  $('.radio_btn').each(function(index) {
    console.log($(this).val());
  });
});
代码语言:javascript
运行
复制
<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中。

如何从单选按钮中获得值(无论是否选中)?

假设

  • 检查无线电按钮1。
  • 没有检查无线电按钮2
  • 检查无线电按钮3。

在我的each-function中,我应该得到值101。也许我只是盲目地看到了解决方案,但对我来说,这似乎是非常基本的。

另外,我是否可以得到索引(1,12,35.)以某种方式从当前的迭代复选框中?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-14 13:20:26

选择要对其进行循环的:checked收音机,并使用substring获取索引:

代码语言:javascript
运行
复制
$(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());
    });});
代码语言:javascript
运行
复制
<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>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42786875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档