我想做一件简单的事情。
我有一个servlet。在 DoPost()
函数中,我正在编写要在浏览器中显示的 HTML 输出。该 HTML 包含单个图像。单击此图像时,我想提醒其元素 id。
servlet:
public void printSinglePlayerBoard(int i_PlayerNumber, HttpServletResponse respose)
throws IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html>\n");
out.println("<script language='javascript' type='text/javascript'
src='functions.js'></script>\n");
out.println("<body>\n");
out.print("<img id='someID' src='somePath' onclick='func(someID)'/>");
out.print("</form>\n</body>\n</html>\n");
}
函数.js:
function func(someID)
{
alert(someID);
var x = document.getElementById(someID);
alert(x);
}
我的问题是我想获取 someID
字符串,但 alert(someID)
或 alert(x)
都没有返回我的结果。问题出在哪里?
alert(someID)
--> 返回[Object HTMLImageElement]
alert(x)
--> 返回null
functions.js 是否能够识别 servlet 中创建的 HTML 元素?
谢谢!
最佳答案
更改此行
out.print("<img id='someID' src='somePath' onclick='func(someID)'/>");
至
out.print("<img id='someID' src='somePath' onclick='func(\"someID\")'/>");
关于java - 使用外部 JS 文件更改 Servlet 的 HTML 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11637879/