0

使用 jQuery mobile 和 javascript,我正在尝试制作一个可以在智能手机上运行的小测验。它还没有完全完成。

我正在尝试创建一个单选按钮列表,其中一个选择了该值并提交,但是当这是选项之一时,为什么输入名称是“radio=choice-v-6”。

<script type="text/javascript">
var answer1 = 2;
function submit()
{ 
   if ($('input[name=radio-choice-v-6]:checked', '#myForm').val() == answer1)
   {
  alert("Correct");
  window.location = "#question-2"
   } 
   else 
   {
   alert("Incorrect");
   window.location = "#incorrect"
   }
}
</script>

然后当我使用我使用的 jQuery 移动预设按钮名称时。

<form id="myForm" name="myForm">
      <fieldset data-role="controlgroup" id="radiobuttons" data-mini="true">
        <input name="radio-choice-v-6" id="radio-choice-v-6a" type="radio" onclick="question1()" value="1">
        <label for="radio-choice-v-6a">One</label>
        <input name="radio-choice-v-6" id="radio-choice-v-6b" type="radio" onclick="question1()" value="2">
        <label for="radio-choice-v-6b">Two</label>
        <input name="radio-choice-v-6" id="radio-choice-v-6c" type="radio" onclick="question1()" value="3">
        <label for="radio-choice-v-6c">Three</label>
    </fieldset>
  <td><button type="submit" id="submit" name="submit" value="Submit" onclick="submit()"></td>
  </form>

我以为我会将输入名称设置为“radiobuttons”或“myForm”

我是 JavaScript 新手,想知道为什么“radio-choice-v-6”有效。

4

1 回答 1

2

'input[name=radio-choice-v-6]:checked'是选择器,仅针对已选中且名称为 的单选按钮radio-choice-v-6。通常不能将表单视为,checked字段集也不能。因此myForm,并且radiobuttons不会针对当前选中的单选按钮。

于 2013-10-23T15:15:16.670 回答