我的一段JS中有个${}字符,是一个正则表达式中的,并且在...中,但这样的JSP编译就通不过,JAVA错如下:
org.apache.jasper.JasperException: /alert.jsp(10,3932) "${}" contains invalid expression(s): javax.servlet.jsp.el.ELException: Encountered "}", expected one of [, , , "true", "false", "null", "(", "-", "not", "!", "empty", ]
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:39)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:200)
org.apache.jasper.compiler.JspUtil.validateExpressions(JspUtil.java:596)
org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:594)
org.apache.jasper.compiler.Node$ELExpression.accept(Node.java:896)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2213)
org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2219)
org.apache.jasper.compiler.Node$Root.accept(Node.java:456)
org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
org.apache.jasper.compiler.Validator.validate(Validator.java:1475)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:214)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:470)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
奇怪了,一个JS语法怎么会引起JAVA报错呢,谁知道这个问题怎么解决?
页首加上<%@ page isELIgnored="true"%>
这个是EL表达式啊,你在JS中写可以加一下转义符看看