我提前为提出这样一个愚蠢的问题而道歉,但我似乎无法让我的Javascript被执行。我从完整的页面切换到一个简单的例子,以确保我没有做任何太棘手的事情,我仍然无法让JS工作。我将以下代码保存在我的服务器上名为index.html的文件中:
<%@page import="index.jsp" %>
<html>
<head>
<title>Hello World</title>
</head>
<body>
Hello World!<br/>
<script type="text/JavaScript" src="index.jsp">
</script>
Still hello world!
<script type="text/JavaScript">
out.println(" Your IP address is " + request.getRemoteAddr());
alert("Welcome to the boost converter site");
</script>
</body>
</html>
我在访问该页面时看到的是:
Hello World
Still Hello World
在Index.jsp文件中,我有:
function InitPage(){
out.println("Your IP address is " + request.getRemoteAddr());
}
我知道解决方案非常简单,但我无法提出修复此问题的代码行。我一直在将示例代码复制到我的页面,只是为了看看别人的JS是否正确执行,我也没有得到。很确定服务器运行Tomcat。
谢谢,
克雷格
答案 0 :(得分:3)
out.println()
是Java / JSP,它不是Javascript。
尝试将其替换为document.write('Your IP address is unknown');
<body>
Hello World!<br/>
<!-- Remove this. A .jsp is not Javascript. -->
<!--script type="text/JavaScript" src="index.jsp">
</script-->
Still hello world!
<script type="text/javascript">
/* You can't use request.getRemoteAddr() in Javascript. It's Java. */
document.write("Your IP address is unknown");//+ request.getRemoteAddr());
alert("Welcome to the boost converter site");
</script>
</body>
答案 1 :(得分:0)
你是在混淆Java和JavaScript吗?它们的语法完全不同。 out.println是Java,要写入文件(输出到browserwindow),你会使用document.write('STRING');在JavaScript中。 一旦在JavaScript中出现这样的错误,JavaScript的其余部分也不会被执行。