昨天还不报错,今天就报错。我什么都没改。
报错信息:
logonOper未定义十分不解,请高手解答,谢谢!logon.jsp部分代码
<input type="submit" name="Submit1" value="提交" onClick="logonOper.submit();" style="cursor:hand;" class="button3">
.......
<script language="JScript">
<%@ include file="logon.js"%>
</script>logon.js部分代码:
var logonOper = new LogonOPer();
function LogonOPer(){ /* 提交 */
this.submit = function(){
alert('ffff');}
}
报错信息:
logonOper未定义十分不解,请高手解答,谢谢!logon.jsp部分代码
<input type="submit" name="Submit1" value="提交" onClick="logonOper.submit();" style="cursor:hand;" class="button3">
.......
<script language="JScript">
<%@ include file="logon.js"%>
</script>logon.js部分代码:
var logonOper = new LogonOPer();
function LogonOPer(){ /* 提交 */
this.submit = function(){
alert('ffff');}
}
this.submit //???//应该是这样把document.forms[index].submit();//当然这样写 就不需要new 了
<input type="submit" name="Submit1" value="提交" onClick="logonOper.submit();" style="cursor:hand;" class="button3">
.......
<script language="JScript">
<%@ include file="logon.js"%>
</script>注意到上面的代码,你引和logon.js的时间在使用logon.js的时间之前,而JSP页面在编译时,一般情况下是自上而下的,你换一下位置就行:<script language="JScript">
<%@ include file="logon.js"%>
</script><input type="submit" name="Submit1" value="提交" onClick="logonOper.submit();" style="cursor:hand;" class="button3">
上面打错,意思是:你使用logon.js中的内容的时间在将它引入页面的时间之前。所以当WEB容器在编译JSP页面时,先对input标签进行编译,而logon.js此时却还没有导入JSP页面。所以出现没有定义的错误。你昨天可能是因为某种误操作首先已经加载到logon.js才没有出错的
<%@ include file="logon.js"%>
</script>
JScript应用于ASP,运行于服务器端。而JavaScript都是运行于客户端。JavaScript则是Sun和Netscape公司共同开发的产品;JScript是微软对ECMA262语言规范的一种实现。
<%@ include file="logon.js"%>
</script>
Lz为什么一定要这样用呢?换一下试试<script type="text/javascript" res="logon.js的地址"/>
include 容易出错,还不好维护