Javascript 在Chrome/IE11/Firefox中的隐藏空字段中设置一个值

Javascript 在Chrome/IE11/Firefox中的隐藏空字段中设置一个值,javascript,html,google-chrome,internet-explorer-11,Javascript,Html,Google Chrome,Internet Explorer 11,我试图在JavaScript的子文本中设置一个值。假设Disptext有一些我想在reportSubtext中设置的值。这段代码在IE8中运行良好,但在Chrome/IE11/Firefox中运行不好。 我得到了一个错误,比如不能设置一个已经为空的对象的值。 潜文本是一个隐藏字段。以下是潜文本的定义: 请编辑您的答案并向我们提供所有HTML。据我所知,您试图在下拉列表中设置值?下面的代码解释了如何做到这一点 <!doctype html> <html> <bod

我试图在JavaScript的子文本中设置一个值。假设Disptext有一些我想在reportSubtext中设置的值。这段代码在IE8中运行良好,但在Chrome/IE11/Firefox中运行不好。 我得到了一个错误,比如不能设置一个已经为空的对象的值。 潜文本是一个隐藏字段。以下是潜文本的定义:


请编辑您的答案并向我们提供所有HTML。据我所知,您试图在下拉列表中设置值?下面的代码解释了如何做到这一点

<!doctype html>
<html>
  <body>
    <select id="list-1">
      <option id="opt-id-1" name="opt-1" value="val-1">Option 1</option>
      <option id="opt-id-2" name="opt-2" value="val-2">Option 2</option>
    </select>
  </body>

  <script>
    // first option (faster execution)
    var list = document.getElementById('list-1');
    var options = list.options;
    console.dir(options[0]);
    options[0].setAttribute('id', 'opt-id-1-CHANGED');
    options[0].setAttribute('name', 'opt-name-1-CHANGED');
    options[0].setAttribute('value', 'opt-value-1-CHANGED');
    options[0].innerHTML='Option 1 CHANGED';
  </script>
</html>

选择1
选择2
//第一个选项(更快的执行)
var list=document.getElementById('list-1');
var options=list.options;
console.dir(选项[0]);
选项[0]。setAttribute('id','opt-id-1-CHANGED');
选项[0]。setAttribute('name','opt-name-1-CHANGED');
选项[0]。setAttribute('value','opt-value-1-CHANGED');
选项[0]。innerHTML='Option 1已更改';
这将返回null,因为代码显示元素没有id。您应该尝试

document.getElementsByName('reportSubText')[0].value

元素子文本的html标记是什么?我猜你有名字而没有id。document.getElementById('SubText')
的结果是什么?运行这段代码时是否存在此元素?同样,您试图设置的元素的HTML标记是什么。你什么时候叫它?问题需要更多详细信息。document.getElementById('SubText')。执行时值为null。我试图在下拉列表中设置值。
document.getElementsByName('reportSubText')[0].value