java - jsp同一个页面form表单的数据提交问题?
阿神
阿神 2017-04-17 17:47:42
[Java讨论组]

下面是代码

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>



    
    
    
    
    
    
Insert title here


输入旧密码:
请输入新密码:
再一次输入新密码:
<% changekey.setId(account.getID()); if(changekey.setOld(request.getParameter("oldk"))){ //在这一行的时候怎么让他等form、的表单提交了之后再执行?是可以用servlet解决,但是这里在jsp页面加载的时候就执行了,返回的表单内容是null,如何等提交后再执行? changekey.setNewkey(request.getParameter("new1")); }else { out.println("原始密码错误!"); } %>

if(changekey.setOld(request.getParameter("oldk"))){ //在这一行的时候怎么让他等form、的表单提交了之后再执行?是可以用servlet解决,但是这里在jsp页面加载的时候就执行了,返回的表单内容是null,如何等提交后再执行?

阿神
阿神

闭关修行中......

全部回复(2)
巴扎黑

你这么写 说明你还没有理解 javaWeb里的前端后端。 java脚本并不是说写在最后就是最后执行。

不论你写在哪都是:

  • 服务器先处理java脚本,对于html只是把它当普通文本 ,之后发送给浏览器

  • 浏览器只处理html内容,看不到java代码

另外 jsp里及展示数据又负责数据验证处理并不好。对于其他人去阅读你的代码回非常麻烦,不过这样的实现也有不少,单纯实习功能参考以下代码, 最后,不推荐业务逻辑也数据展示写到一起!

刚开始学的时候你可以试着 把html内容遮盖住,然后写java代码,之后再倒过来吧java遮住。
你可以把他们想象成地下党接头,两拨人一直不见面,交流都是通过去固定的地方放小纸条。

<%@ page language="java" contentType="text/html; charset=UTF-8"  pageEncoding="UTF-8"%>
<% 
    String oldk = request.getParameter("oldk");
    String msg="";
    if(oldk!=null && !oldk.trim().equals("")){
        // 处理数据
        XXService.changeKey(oldk);
        // 处理之后跳转页面
        response.sendRedirect(request.getContextPath() + "xxx.html");
    }else{
        msg = "请输入XXX"
    }
%>

<p><%=msg%></p>
<form method="post" action="#" >
    <input type="password" name="oldk"  />
    <input type="submit" >
</form>
PHP中文网

问出这样的问题只能说明你还没理解前端后端的关系,后端代码怎么能在前端执行呢?要执行请用前端代码。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号