首页 > 解决方案 > 如何在未选中的单选按钮旁边获取输入文本值?

问题描述

我有一个简单的表格来发布多项选择题。但我被困在这个问题上。我有 4 个带单选按钮的输入组,并在其旁边输入。我能够获取选中单选按钮旁边的输入文本的值,但我还想获取未选中单选按钮旁边的所有剩余 3 个输入的输入值。任何帮助,将不胜感激。谢谢。

表单.html

<div class="input-group">
                  <div class="input-group-prepend">
                    <div class="input-group-text">
                      <input
                        type="radio"
                        aria-label="Select radio button for correct option"
                        name="option"
                        required
                      />

                    </div>
                  </div>
                  <input
                    type="text"
                    class="form-control"
                    id="optionB"
                    placeholder="Option B"
                    required
                  />
                </div>

脚本.js

var correctChoice = $("input:radio:checked")
    .closest(".input-group")
    .find('input[type="text"]')
    .val();

  var uncheckedRadioButtons = $('input[type="radio"]:not(:checked)');

  for (var i = 0; i < uncheckedRadioButtons.length; i++) {
    console.log(uncheckedRadioButtons[i]);
  }

标签: javascripthtml

解决方案


我设法让这个工作:

var options = ["optionA", "optionB", "optionC", "optionD"];
  var question = document.getElementById("question").value;
  var correct_answer = $("input:radio:checked")
    .closest(".input-group")
    .find('input[type="text"]')
    .val();

  var correctChoiceInputId = $("input:radio:checked")
    .closest(".input-group")
    .find('input[type="text"]')
    .attr("id");

  var wrong_answers = [];

  for (var i = 0; i < options.length; i++) {
    if (correctChoiceInputId !== options[i]) {
      wrong_answers.push(document.getElementById(options[i]).value);
    }
  }

推荐阅读