如果是单独的js文件,el表达式是不起作用的, EL表达式是在服务端执行的,服务端执行完成后再传给客户端的,js是在客户端执行的,el在js前就被执行了 把引入的外部js改为jsp文件,然后在jsp页面中引入
<script src="myjs.jsp"></script>
在完全是js的jsp文件中,在执行的时候会出现乱码在顶部加入
<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
可解决乱码 然后在jsp页面中引入myjs.jsp,
<script src="myjs.jsp" type="text/javascript"></script>
但是如果js文件有创建html,就会出现错误,
比如document.createElement('<option>' ); 即使转义后
document.createElement('<option>' ); 也没有效果 ,在解析的时候,会创建
document.createElement('<html><option>' );使用时候不识别的标识符 .
可以直接使用 document.createElement('option') 火狐不支持
select.options.appendChild(option), IE支持
select.appendChild(option) IE和Firefox都支持
火狐不支持option.innerText="test",
为兼容 改写为option.innerHTML="test"
可以把js写在jsp文件中 然后在需要引用这个文件的jsp里加上
<jsp:include page="包含js的jsp文件" />