使用 heroku 和 node.js 启动一个简单的应用程序。我想显示在文本框中输入的文本,但执行此操作的功能似乎从未输入。当我检查未定义 addString() 的元素时,会出现参考错误。我在这里错过了什么吗?
编辑:将服务器端和客户端放在单独的文件中:
var express = require("express");
var app = express();
app.use(express.logger());
var fs = require('fs');
var script = fs.readFileSync('./feed.js');
app.get('/feed.js', function(req, res) {
res.type('text/javascript');
res.send(script);
});
var html = "";
html += "<body>";
html += "<div> Tweet!";
html += "<input type= 'text' name = 'name' id = 'name_id'/>";
html += "<button type='button' id='submit' onclick='addString()'>Tweet</button>";
html += "</div>";
html += "</body>";
app.get('/', function(request, response) {
response.send(html);
});
var port = process.env.PORT || 5000;
app.listen(port, function() {
console.log("Listening on " + port);
});
和 feed.js:
var input = [];
function addString() {
console.log("got here");
alert("got here");
var s = document.getElementById("name_id").value;//x.name.value;
input.push(s);
var size = s.length;
//alert(size);
printArray(size);
}
function printArray(size){
var div = document.createElement('div');
for (var i = 0 ; i < size; ++i) {
div.innerHTML += input[i] + "<br />";
}
document.body.appendChild(div);
//alert(size);
}
似乎仍然没有进入 feed.js 功能