不能追加html元素jquery

我试图让jquery追加文本到div元素。 我试图按照这个链接http://api.jquery.com/append/,但它不是为我工作,我看到的只是你好,但单词testing不会被追加。

这里是html:

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head> <body> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> <script src="test.js"></script> <div class="container"> <div class="inner">Hello</div> </div> </body> </html> 

这里是test.js,它和test.html位于同一个目录下。

 $(document).ready(function() { $('.inner').append("<p> Test </p>"); }); 

这里是服务于html页面的节点服务器。

 const fs = require("fs"); const http = require('http'); var page = fs.readFileSync('test.html'); http.createServer(function(req, res) { if(req.method == 'GET' || req.url == '/') { res.writeHead(200, "OK", {'Content-Type': 'text/html'}); res.write(page); res.end(); } }).listen(80); 

你的代码是好的,但是你的node.js服务器只能在/ path下运行test.html 。 只有您明确发送的文件才能被浏览器使用,所以HTML页面将无法加载test.js 为此文件添加一个else if (并更改内容types):

 const fs = require("fs"); const http = require('http'); var page = fs.readFileSync('test.html'); var testjs = fs.readFileSync('test.js'); http.createServer(function(req, res) { if(req.method === 'GET' && req.url === '/') { res.writeHead(200, "OK", {'Content-Type': 'text/html'}); res.write(page); res.end(); } else if(req.method === 'GET' && req.url === '/test.js') { res.writeHead(200, "OK", {'Content-Type': 'application/javascript'}); res.write(testjs); res.end(); } }).listen(80); 

另请注意:

  • || 现在是&& ,因为以前任何 GET请求都会满足第一个条件。

  • ==现在=== – 在大多数情况下,包括这个,最好使用=== ,或严格平等。 如果您有兴趣,请点击此处 。