如何使用jquery检查哪个单选按钮?

如何使用jquery检查哪个单选按钮?,jquery,function,Jquery,Function,我正试图根据选中的单选按钮打印文本。 你能告诉我怎么了吗 只是获取错误输出 <input type="radio" name="feedback-form-visit-again" id="genderm" class="gendercheck" value="0" required> m <input type="radio" name="feedback-form-visit-again" id="genderw" class="gendercheck" value="1"

我正试图根据选中的单选按钮打印文本。 你能告诉我怎么了吗

只是获取错误输出

<input type="radio" name="feedback-form-visit-again" id="genderm" class="gendercheck" value="0" required> m
<input type="radio" name="feedback-form-visit-again" id="genderw" class="gendercheck" value="1"> w

<span class="gendertest">*Output*</span>
您只需要在代码中定义性别,因为您试图通过gender.value访问gender的value属性

试试我测试过的这种方法,顺便说一句,它是有效的:

$(document).ready(function() {
  $('.gendercheck').change(function() {
    var selectedRadio = $('.gendercheck:checked'); // this is the "checked" radio button that has the class you're using. using .value would be more of the vanilla JS way, which isn't bad, but if you wanted to do it the jQuery way, just get the val like this --> selectedRadio.val(); 
    if (selectedRadio.val() == 0) {
      $('.gendertest').text('m');
    } else if (selectedRadio.val() == 1) {
      $('.gendertest').text('w');
    } else {
      $('.gendertest').text('error');
    }
  });
});
为了好玩,我只想给你看一个代码行更少的例子。基本上,打印无线电输入的值,而不是定义if/else语句。 您需要修改html输入:

<input type="radio" name="feedback-form-visit-again" id="genderm" class="gendercheck" value="m" required> men
<input type="radio" name="feedback-form-visit-again" id="genderw" class="gendercheck" value="w"> women
$.gendercheck.onchange,函数{ var selected_ID=$this.attr'ID'; 如果选中,则\u ID==genderm{ $.gendertest.textm; }如果选中,则为else\u ID==genderw{ $.gendertest.textw; }否则{ $.gendertest.texterror; } } M W
*输出*什么是性别?你似乎没有在任何地方声明或分配它。什么是性别-你从来没有定义过它。如果您将性别替换为此-应该可以,在单选按钮的更改处理程序中,可能会选择与此重复的单选按钮。没有理由去查找它。@Taplar-true,但是考虑到与jQuery相关的问题,我只是展示了jQuery的方法。用jQuery的方法进行并不意味着引入不必要的查找调用它不必要似乎比任何东西都更迂腐。很多人开始通过jQuery学习JS。由于OP特别关注如何通过jQuery实现,因此以这种方式展示jQuery提供了更多关于jQuery方法的详细信息。它教给人们一种低效的使用库的方法,这只会鼓励人们错误地使用库,并在一些人中宣传库效率低下的观点。是的,考虑到您已经有了一个元素的引用,这个元素或e.target离开了您可以传递的事件,所以这是非常不必要的。
<input type="radio" name="feedback-form-visit-again" id="genderm" class="gendercheck" value="m" required> men
<input type="radio" name="feedback-form-visit-again" id="genderw" class="gendercheck" value="w"> women
$(document).ready(function() {
  $('.gendercheck').change(function() {
    var selectedRadio = $('.gendercheck:checked'); // the checked radio
    $('.gendertest').text( selectedRadio.val() ); // output with the radio input's val
  });
});