我的浏览器显示的是javascript代码,而不是运行我写的代码

时间:2014-09-07 14:05:35

标签: java html

这是我为验证登录而编写的代码:

<html>
   <head>
      <meta http-equiv="Content-Type" content="javascript/html; charset=UTF-8">
      <title>JSP Page</title>
   </head>
   <body> 
   <% String username=request.getParameter("username"); 
   String password=request.getParameter("password"); 
   if((username.equals("root") && password.equals("Root@123"))) 
   {    
        session.setAttribute("username",username); 
        response.sendRedirect("admin.html"); 
    } 
    else if((username.equals("school") && password.equals("school@123"))) 
    {   
        session.setAttribute("username",username); 
        response.sendRedirect("school.jsp"); 
    } 
    else 
    {
        response.sendRedirect("Error.jsp");
    }
        %> </body>
</html>

但不是在<% - - - - %>内执行显示代码。 有人请帮我解决这个问题。 有时会运行,有时却不运行。

2 个答案:

答案 0 :(得分:3)

代码是正确的,并且假设您的Java EE容器已设置为将文件视为JSP,它应该这样做,但有一件事情会跳出来:

<meta http-equiv="Content-Type" content="javascript/html; charset=UTF-8">

您正在将响应的Content-Type设置为javascript/html(据我所知,这是一种完全未知的MIME类型)。这个可能阻止您的Java EE容器尝试将其视为JSP,尽管它会让我感到惊讶。标签应为:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

这是猜测,但由于meta标签肯定是错误的,我会修复它。

如果这不能解决问题,那么你需要查看Java EE容器的设置(Tomcat,JBoss,无论你使用什么),因为它不会将文件视为JSP。

答案 1 :(得分:-1)

那个代码不是javascript,而是java。看起来您正在尝试使用Java Server页面(JSP),它通过在您的网络服务器上运行Java代码来生成HTML,然后将其发送到浏览器。 Javascript是一种完全不同的语言,通常在浏览器中运行。

为了使代码运行而不是仅仅显示在页面中,您需要设置一个将执行Java代码并提供页面的Web服务器。