1

此功能在我的一个文件中运行,但在另一个文件中不起作用,我检查了所有名称等但找不到.....

在第一个文件中

<script type="text/javascript" >
    function fillDataInCommand()
    {
//      var abc = document.myApp.getDataForCommand();
    var abc ="heelo syed ammar hassan is here";
        document.getElementById("commandtextarea").value = abc;
    }

</script>

<form id="form1" name="form1" method="post" action="">
  <label>
  <textarea name="commandtextarea" style="background-color:#CCCCCC" cols="80" rows="20" wrap="off" id="commandtextarea"></textarea>
  </label>
</form>

在另一个;

document.write ("<div align='center'><textarea name='commandtextarea' style='background-color:#EFEFEF' cols ='70' rows='20' rap='off' id='commandtextarea' readonly='readonly'>abc</textarea></div>");

alert(document.getElementById("commandtextarea").value.toString());
4

3 回答 3

7

这是因为 document.write 函数。之后,文档中将没有文本框,因此 document.getElementById 失败。

document.write 语句必须在页面完成加载之前运行。这意味着它们必须要么在页面主体中,要么在从页面主体调用的函数中。

在页面加载完成后运行的任何 document.write 语句都将创建一个新页面并覆盖当前页面的所有内容。

于 2009-09-16T06:43:43.170 回答
0

document.getElementByName在第二个文件中使用。你的意思是使用document.getElementById.

编辑:你是,至少。

于 2009-09-16T06:40:35.500 回答
0

单独尝试 alert(document.getElementByName("commandtextarea").value 。

于 2009-09-16T06:42:04.953 回答