将 HTML 单选按钮值传递给 javascript 变量 [重复]

Posted

技术标签:

【中文标题】将 HTML 单选按钮值传递给 javascript 变量 [重复]【英文标题】:passing HTML radio button value to a javascript variable [duplicate] 【发布时间】:2013-03-14 02:06:19 【问题描述】:

我想知道是否有人可以帮助我,我被困在需要编写这样的小代码的地方。

Question : did you like the training?

<input type="radio" name="q4" value="Yes">Yes
<input type="radio" name="q4" value="No">No

无论检查什么,我都想将它传递给一个 javascript 变量。

【问题讨论】:

【参考方案1】:

你可以用 Jquery 试试这个。

$('input[name="q4"]:checked').val();

【讨论】:

由于该问题未标记为jquery,因此您还应该提供替代解决方案(不带jQuery)。 你能告诉我怎么用 Javascript 写这个吗?或者我如何在 jQuery 中定义,例如 answer = $('input[name="q4"]:checked').val(); 【参考方案2】:

我认为你可以这样做:

var ch = document.getElementsByName('q4');

for (var i = ch.length; i--;) 
    ch[i].onchange = function() 
        alert(this.value);
    

http://jsfiddle.net/EUErP/

所以你订阅了更改事件,并且可以以某种方式使用选定的值。

您也可以使用querySelector (querySelectorAll) 方法。这是一个如何获取检查元素值的示例:

var checked = document.querySelector('[name="q4"]:checked');

http://jsfiddle.net/EUErP/2/

【讨论】:

它给我null,有什么建议吗?我所做的是我使用 querySelector 就像你之前建议的代码 Yes 没有 可能什么都没检查? 毕竟我设法让它工作,但它似乎与 IE 不兼容,因为我收到错误对象不支持此属性或方法,它指的是这一行 ' var checked = document.querySelector('[name="answer1"]:checked'); ' querySelector 在 IE8+ 中可用。检查支持caniuse.com/#feat=queryselector 我使用的版本是IE7

以上是关于将 HTML 单选按钮值传递给 javascript 变量 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

我无法将我的 v-model 数据传递到我的后端以获取 vue.js 中的单选按钮类型,如何将选中的单选按钮值传递给我的后端?

如何通过 PHP 将多个单选按钮值作为所有单独的值传递给 MYSQL 数据库,但将它们分成组?

如何获取单选按钮的值并将其传递给 laravel 中的控制器?

如何将值从 DB 传递到单选按钮组?

如何将枚举传递给 Html.RadioButtonFor 以获取 MVC 2 RC 2、C# 中的单选按钮列表

单击单选按钮时,将其值传递给 vue 组件实例