jsp中java代码中间一段javascript不执行

代码如下:是在想不通为什么,也调不通,求大牛指点。<%if(!(user.getPassword().equals(password))){System.out.prin... 代码如下:是在想不通为什么,也调不通,求大牛指点。
<%
if(!(user.getPassword().equals(password))){
System.out.println("用户名和密码不匹配!");
%>
<script type="text/javascript">
alert("用户名和密码不匹配!");
</script>
<%
}
%>
展开
 我来答
leandzgc
2012-12-24 · 超过52用户采纳过TA的回答
知道小有建树答主
回答量:167
采纳率:100%
帮助的人:59.6万
展开全部
只要条件成立,楼主的这个代码是完全没有问题的,应该是可以弹出用户名和密码不匹配的提示框来。那么可能的原因就在可控范围内了,两种原因,一种是你的if条件不成立,另一种就是你代码有写错。但是看楼主的代码好像没问题,我下面给楼主写一个测试的代码,楼主可以试一下,应该就知道原因何在了。

<%
//先判断password是否为空,然后比对
if (user.getPassword() != null && user.getPassword().equals(password)){
System.out.println("密码正确,不提示!");

} else {
System.out.println("密码为空或用户名和密码不匹配!");

%>
<script language="javascript">
alert("密码为空或用户名和密码不匹配!");

</script>

<%

}
%>

PS:上面的代码外面你要确认没有被<script>...</script>括住,因为貌似script标签不能嵌套使用,所以楼主最好把这段代码放在jsp的最上端的几行,执行一遍就知道问题所在了。
没有响应m2
推荐于2016-06-30 · TA获得超过8387个赞
知道大有可为答主
回答量:7579
采纳率:33%
帮助的人:3502万
展开全部
<%! int i = 0 ;%>
<%
i++;
if(i%2==0)
{
System.out.println(""用户名和密码不匹配");

%>
<script type="text/javascript">
alert(1111);
</script>
<%
}
%>
这样写完全没问题 可以通过 检查下你的!(user.getPassword().equals(password)) 看看有没有问题
用<%= %>把 user.getPassword()的值输出看看?
追问
谢谢!上边的代码确实可以单独运行,其实代码的alert后边还有一句java, 这样就不能执行js了。希望你能帮忙再看下。
追答
jps 会被容器转换成Servlet 这个知道把

alert(1111);

这样的内容都是会用 out() 方法来输出的
在Servlet里 如果要用response.sendRedirect来跳转的话 在response.sendRedirect之前是不允许用out()输出任何内容的.
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sky的悲伤
2012-12-23 · TA获得超过431个赞
知道答主
回答量:186
采纳率:0%
帮助的人:174万
展开全部
可以在js中嵌套java代码, 真没见过在java中加js代码。。。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
糖水印记
2012-12-25 · 超过11用户采纳过TA的回答
知道答主
回答量:37
采纳率:100%
帮助的人:14.2万
展开全部
password 是不是得用引号?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式