jsp页面function里面if判断失效

在文章开始,我必须得郑重的说明一点:if绝对没有失效!

很多同学在调试的时候发现if条件无论对错都会执行。对于这个现象,并没有什么问题。要了解这个现象得先从jsp输出为html网页说起。

jsp是在服务器的servlet里运行,html,js在浏览器上执行。执行顺序是jsp->js。大家知道页面的加载顺序是由上至下执行的,js属于页面的一部分,所以他的加载顺序也是由在页面中的位置而定。jsp转换为页面的时候,它会一行行的输出,那么问题就出现了,他根本不会管if的条件对或者错,都会加载下一行的,知道执行完整个jsp,这样页面就加载好了。

前面说到了加载,请大家同执行区别开来。加载时一个自发的行为,是jsp转为页面的一个自动化过程。而执行是我们在页面加载好之后进行了一系列操作,代码所做出的响应。

所以对于那些执行不会出现的错误,在加载时并不代表不会出错。比如,空指针异常,在页面加载过程中可能还没对一个对象进行实例化,而是当我们执行后进行的实例化。等等,你认为莫名其妙的错误。如果你将页面加载的过程也看成是代码真实执行的过程(就是真是执行的过程),就不会感到意外了。

说了这些相信你知道怎么解决相关的问题了。

时间: 2024-08-02 09:23:12

jsp页面function里面if判断失效的相关文章

后端model传入前端JSP页面中的值判断后再取值

所遇到的问题后端model传入前端JSP页面中的值通过foreach循环内要满足条件才能取值给Div中,我们知道jsp页面中可以直接用EL表达式取值,格式就是${"model中传来的数据"},但是我要把传过来的数据判断后再取值就遇到了问题,通过查百度发现了一个方法,下面就分享一下. 1 <c:forEach var="v" items="${page.objectList}"> 2 <tr> 3 <td style=

用DBHelper在JSP页面中实现登录功能

首先我们需要写一个简单的登陆页面login.jsp,然后用from表单提交给index.jsp页面.在index.jsp页面通过DBHelper连接数据库判断账号和密码,如果密码正确则显示登陆成功. 下面是登陆页面代码 <html><head><base href="<%=basePath%>"> <title>登陆页面</title> </head> <body> //提交用户名密码到in

JSTL JSP页面判断某个cookie的值和读取值....

<c:if test="${cookie['woshop'].value eq '1'}"> <div> <table class="table-box" width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td> <img src="/t

 jsp页面如何结合EL标签或JSTL标签,进行判断的?

JSTL(JSP Standard Tag Library,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,是由apache的jakarta小组来维护的.JSTL只能运行在支持JSP1.2和Servlet2.3规范的容器上,如tomcat 4.x.在JSP 2.0中也是作为标准支持的. 这主要是为了替换以前Java代码写在Jsp页面上的写法.例如: 以前写法如下: 1 2 3 4 <%              String amind="Admin";       

jsp页面中jstl标签详解

JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL全名为JavaServer Pages Standard Tag Library,目前最新的版本为1.1版.JSTL是由JCP(Java Community Process)所制定的标准规范,它主要提供给Java Web开发人员一个标准通用的标签函数库. Web程序员能够利用JSTL和EL来开发We

关于界面的按钮的显隐 还有jsp页面数据的传递 把页面的标签变成只读

//界面按钮的显示隐藏 界面input的锁定    function change(){       document.getElementById('first1').style.display="inline";       document.getElementById('first2').style.display="inline";       document.getElementById('first3').style.display="in

jsp 页面标签 积累

http://www.cnblogs.com/xiadongqing/p/5232592.html <%@ taglib %>引入标签库 ========================================================================= 1.以classPath中,加入jar包:  standard-1.1.2.jar ,  jstl-1.1.2.jar 2.在相目\WEB-INF\tld\文件夹中放入常用的tld文件:c.tld,fmt.tld

JSP页面标签

1.EL表达式中empty的用法 EL表达式中empty的用法 <c:if test="${! empty key}">${key}</c:if> <c:if test="${empty key}">所有</c:if> 当key不为空时输出key的值.当key为空时,输出“所有” 规则: 1若key为null时,返回true 2若key为空String时,返回true 3若key为空Array时,返回true 4若ke

jsp页面提交的时候,浏览器提示未响应,因为脚本长时间运行

解决的思路: 首先是对问题的分析,在提交的时候出现的问题,所以从jsp页面的提交方法入手 原来的jsp页面: 1 <!-- 提交按钮 --> 2 <div class="ui-btn-wrap"> 3 <button class="ui-btn-lg ui-btn-primary"> 4 确定 5 </button> 6 </div> js代码(校验提交表单): 1 $(function(){ 2 //jq