使用javascript获取价值

时间:2018-11-05 11:46:32

标签: javascript

我有2个输入类型,它们都是复选框。 我试图获得它们的价值,但它说这是“未定义的”。

<tr>
  <td>
    <input type='checkbox' class='gymyears'>
    Yes
    <input type='checkbox' class='gymyears'>
    No
  </td>
</tr>

var Gymyearsv = $(".gymyears").val();

1 个答案:

答案 0 :(得分:0)

问题在于您的复选框没有值,这就是为什么它仍未定义的原因。您必须查找“已检查”:

var Gymyearsv = $(".gymyears");

function getState() {
  Gymyearsv.each(function(i, checkbox) {
    console.log(checkbox.checked);
  });
}

// or use $('#yourID').is(":checked");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<tr>
  <td>
    <input type='checkbox' class='gymyears'> Yes
    <input type='checkbox' class='gymyears'> No
  </td>
</tr>
<button onclick="getState();">get state</button>

或者如罗伊所说,您可以改用收音机:

function getState(){
  console.log($("input[name=gymyears]:checked").val());
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<tr>
  <td>
    <input type='radio' name='gymyears' value="yes"> Yes
    <input type='radio' name='gymyears' value="no"> No
  </td>
</tr>
<button onclick="getState();">get state</button>