Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何获取由div分隔的单选按钮的值?_Javascript_Html_Css - Fatal编程技术网

Javascript 如何获取由div分隔的单选按钮的值?

Javascript 如何获取由div分隔的单选按钮的值?,javascript,html,css,Javascript,Html,Css,我有3个单选按钮,虽然它们都有相同的名称,但出于视觉目的,它们被封装在自己的div中。问题是,当我尝试检索单选按钮的值(即所选按钮)时,它返回一个错误ReferenceError:editList未定义 在HTMLButtonElement.document.getElementById.onclick sqlTemplate.html:56 代码如下: var a; document.getElementByIdsubmitButton.onclick=函数{ a=editList.valu

我有3个单选按钮,虽然它们都有相同的名称,但出于视觉目的,它们被封装在自己的div中。问题是,当我尝试检索单选按钮的值(即所选按钮)时,它返回一个错误ReferenceError:editList未定义 在HTMLButtonElement.document.getElementById.onclick sqlTemplate.html:56

代码如下:

var a; document.getElementByIdsubmitButton.onclick=函数{ a=editList.value; console.loga; } 无线电按钮L1{ 显示:内联块; 利润率:30px 30px; 边框:1px灰色实心; 边界半径:2px; 填充:10px; } radioButtonCol1>*{ 显示:块; } 无线电按钮L1{ 显示:内联块; 利润率:30px 30px; 宽度:150px; } radioButtonCol1>*{ 显示:块; } 无线电按钮L1{ 显示:内联块; 利润率:30px 30px; } radioButtonCol1>*{ 显示:块; } .放射性输入样式{ 保证金:0自动; } .放射性标签样式{ } 放射性核素{ 宽度:100%; 边缘底部:30px; } 提交按钮{ 宽度:174px; 显示:块; 边界半径:2px; 边框:1px纯灰; 保证金:0自动; } 提交按钮:活动{ 背景色:D0; } 线性的 触觉的 触感和咔嗒声 提交
有几个问题

首先,您在单选按钮上使用双id,第二个id是通用的。因此,所有人都放弃第二个id声明

然后标签的for属性应该指向每个输入的正确剩余id

然后对所有三个单选按钮使用相同的值,这将无助于理解用户选择的内容

最后,在脚本中,您需要在访问其值之前查询选中的单选按钮文档.querySelector'.radioInputStyle:checked'

所以

var a; document.getElementByIdsubmitButton.onclick=函数{ a=document.querySelector'.radioInputStyle:checked'.value; console.loga; } 无线电按钮L1{ 显示:内联块; 利润率:30px 30px; 边框:1px灰色实心; 边界半径:2px; 填充:10px; } radioButtonCol1>*{ 显示:块; } 无线电按钮L1{ 显示:内联块; 利润率:30px 30px; 宽度:150px; } radioButtonCol1>*{ 显示:块; } 无线电按钮L1{ 显示:内联块; 利润率:30px 30px; } radioButtonCol1>*{ 显示:块; } .放射性输入样式{ 保证金:0自动; } .放射性标签样式{ } 放射性核素{ 宽度:100%; 边缘底部:30px; } 提交按钮{ 宽度:174px; 显示:块; 边界半径:2px; 边框:1px纯灰; 保证金:0自动; } 提交按钮:活动{ 背景色:D0; } 线性的 触觉的 触感和咔嗒声 提交
id必须是唯一的什么是editList?每个输入中有2个id,请为每个输入删除第二个id。如果要避免为标签和输入创建/id对匹配的麻烦,可以将输入设置为标签的子项(如果需要)。必须定义editList,您的函数无法识别它。您不认为添加document.querySelector'.radioInputStyle:checked'.value将拾取所有输入样式class=radioInputStyle的单选按钮吗?因为可能会有这样的情况,我会在同一页的不同部分应用相同的样式?是的,在这种情况下,您应该使用document.querySelector'input[name=editList]:checked'。值