Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.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 基于radiobutton响应启用多个文本区域_Javascript_Radio Button_Textarea - Fatal编程技术网

Javascript 基于radiobutton响应启用多个文本区域

Javascript 基于radiobutton响应启用多个文本区域,javascript,radio-button,textarea,Javascript,Radio Button,Textarea,以下是我试图解决的问题: 我有一长串问题 每个问题包括一个回答部分,由4个单选按钮(是、否、未看到和不适用)和两个文本区域组成; 现在,默认情况下禁用textarea“观察”。只有用户的回答“否”才能启用此文本区域 问题:如何将相同的逻辑应用于整个问题集中的每个文本区域“观察” 我目前的情况是: A.响应按钮的HTML <div id="Response"> <label><input type="radio" name="Radio419" value="Y"

以下是我试图解决的问题: 我有一长串问题

每个问题包括一个回答部分,由4个单选按钮(是、否、未看到和不适用)和两个文本区域组成; 现在,默认情况下禁用textarea“观察”。只有用户的回答“否”才能启用此文本区域

问题:如何将相同的逻辑应用于整个问题集中的每个文本区域“观察”

我目前的情况是: A.响应按钮的HTML

<div id="Response">
  <label><input type="radio" name="Radio419" value="Y" id="Radio_419Y" onchange='radioChange(this)'>Yes</label>
  <label><input type="radio" name="Radio419" value="N" id="Radio_419N" onChange='radioChange(this)'>No</label>
  <label><input type="radio" name="Radio419" value="NS" id="Radio_419NS" onChange='radioChange(this)'>Not Seen</label>
  <label><input type="radio" name="Radio419" value="NA" id="Radio_419NA" onChange='radioChange(this)'>Not Applicable</label>
</div>

对
不
不见
不适用
B.文本框的HTML

 <span id="responseDetails">
 <div id="Comment">
   <label for="comment">Comment:</label>
   <textarea name="comment" id="Comm419"</textarea></div>
 <div id="Observation">
   <label for="observation">Observation:</label>
   <textarea name="observation" id="Obs419"</textarea></div>
 </span>

评论:

如果您可以像这样将id传递到
radioChange()
函数
onchange='radioChange(this'419')'

更新

首先,您的两个
textarea
标记都没有关闭

<textarea name="comment" id="Comm419" </textarea></div>
//-----------------------------------^

这是通过动态id传递的id。

是静态的
{document.getElementById(“Obs419”).removeAttribute(“disabled”)}
工作吗?当使用动态id时,您是否通过了
onchange='radioChange(这个,'419')
输入标记的id
{if(button.checked){if(button.value==“N”){document.getElementById(“Obs”+id”).removeAttribute(“disabled”)}否则{document.getElementById(“Obs”+id”).setAttribute(“disabled”,true)}哦,是的,它可以工作。在复制/粘贴示例的过程中,结尾标记丢失了,但双引号起了作用!非常感谢。
 <label><input type="radio" name="Radio419" value="Y" id="Radio_419Y" onchange='radioChange(this, '419')'>Yes</label>
document.radioChange = function (button, id)
  {if(button.checked ) {if (button.value === "N") 
    {document.getElementById("Obs"+id).removeAttribute("disabled")}
    else
{document.getElementById("Obs"+id).setAttribute("disabled",true)}}}
<textarea name="comment" id="Comm419" </textarea></div>
//-----------------------------------^
onchange='radioChange(this, "419")'