我尝试打开文件并写入文件时出现问题

时间:2010-09-10 09:30:39

标签: javascript dom

有人可以解释为什么以下简单脚本在Firefox中不起作用,我该如何解决?

<script type="text/javascript">
var w = window.open("a.php");
w.document.write("hello");
</script>

非常感谢

3 个答案:

答案 0 :(得分:2)

(编辑以使代码示例显示更好)

DOM Scripting更新,更强大。

e.g。

var w = window.open("a.php");
w.onload = function(){//you could also use dom ready rather than onload but that is a longer script that I've not included here
  var body = w.document.getElementsByTagName("body")[0];
  body.appendChild(document.createTextNode("bar"));
}

答案 1 :(得分:0)

我很确定你不能使用javascript读/写文件,因为它是客户端语言?我可能完全错了!

编辑:

试试这段代码:

var new_window, new_window_content = [];
new_window_content.push('<html><head><title>New Window</title></head>');
new_window_content.push('<body>New Window</body>');
new_window_content.push('</html>');
new_window = window.open("", "", "status,height=200,width=200");
new_window.document.write(new_window_content.join(''));

干杯,肖恩

答案 2 :(得分:0)

其他人在这里发布答案:他没有尝试打开文件并写入它 - 在浏览器中的javascript中是不可能的。他试图用w.document.write做的是写在他刚刚在浏览器中打开的网页的末尾。

谷歌浏览器称此代码失败为:

>>> var w = window.open("http://www.google.co.uk");
undefined
>>> w.document.write("lol");
TypeError: Cannot call method 'write' of undefined

首先需要使用document.open()打开文档流 - 这会在write中添加w.document函数:

<script type="text/javascript">
var w = window.open("a.php");
w.document.open();
w.document.write("hello");
w.document.close();
</script>