我正在尝试读取名为start.txt的本地文件
如果我到达第一行为nextpage
的点,它会做一些事情,但如果不是,它会附加到textarea。但是它给了我一个错误:
Uncaught TypeError: Cannot read property 'inputtext' of undefined (23:44:44:520 | error, javascript)
at (public_html/index.html:12:50)
我尝试阅读的文件与index.html文件位于同一文件夹中。我是HTML,AJAX和JavaScript的新手,所以我可能只是不知道我正在做什么!
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.2.4/mootools-yui-compressed.js"></script>
<script type="text/javascript">
var txtFile = new XMLHttpRequest();
var inputarea = document.textareaform.inputtext.value;
txtFile.open("GET", "http://localhost/start.txt", true);
txtFile.onreadystatechange = function() {
// Makes sure the document is ready to parse.
if(txtFile.readyState === 4) {
// Makes sure it's found the file.
if(txtFile.status === 200) {
allText = txtFile.responseText;
// Will separate each line into an array
lines = txtFile.responseText.split("\n");
for(i = 0; i < lines.length; i++) {
var s = lines[i];
if(s.indexOf("nextpage") > -1) {
// Line is there
} else {
// Line is not there
inputarea += s;
}
}
}
}
};
txtfile.send(null);
</script>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<form name="textareaform">
<textarea name="fileoutput" rows="4" cols="20" readonly="readonly">
</textarea>
</form>
<div>TODO write content</div>
</body>
</html>
答案 0 :(得分:1)
它正在寻找名为“inputtext”的textarea
,并将其命名为“fileoutput”。
尝试将textarea重命名为“inputtext”:
<textarea name="inputtext" rows="4" cols="20" readonly="readonly"></textarea>
或强>
以不同方式定义您的变量:
var inputarea = document.textareaform.fileoutput.value;
答案 1 :(得分:0)
将var输入区域声明更改为此。
var inputArea = document.getElementsByName('fileoutput');
希望这有帮助。