jsp,点击提交后页面一片空白

图片说明

 <%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="GB2312" %>
<html>
   <body>
       <%! 
             public String getString(String str)
             {
                if (str==null)
                {
                    str="";
                }
                else
                {
                    try
                    {
                        byte[] b=str.getBytes("ISO-8859-1");
                        str=new String(b);
                    }
                    catch (Exception e)
                    {
                        e.printStackTrace();
                    }
                }
                return str;
             }
         %>
         <%
            String userName=request.getParameter("userName");
            String userPass=request.getParameter("userPass");
            String email=request.getParameter("email");
            String trueName=request.getParameter("trueName");
            String address=request.getParameter("address");
            String telephone=request.getParameter("telephone");
            userName=getString(userName);
            userPass=getString(userPass);
            email=getString(email);
            trueName=getString(trueName);
            address=getString(address);
            telephone=getString(telephone);
          %>
          <%
              Connection con=null;
              Statement stmt=null;
              ResultSet rs=null;
              String driver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
              String url=" jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=JSPDB";
              try
              {
                Class.forName(driver);
                con=DriverManager.getConnection(url,"sa","123");
                stmt=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
            String sql="insert into usertable values("+"'"+userName+"','"+userPass+"','"+email+"','"+trueName+"','"+address+"','"+telephone+"')'";
            int i=stmt.executeUpdate(sql);
            if (i>0)
            {
                out.println("客户注册成功");
            }
            else
            {
                out.println("请重新注册!");
            }
            rs.close();
            stmt.close();
            con.close();
              }
              catch (Exception e)
              {
                System.out.println("e="+e.toString());
              }
           %>
           </body>
           </html>

图片说明
图片说明

你的catch里面不要写System.out.println("e="+e.toString());
写成out.println("e="+e.toString());这样就能看到报错了,而System.out.println("e="+e.toString());只是在控制台打印,你的报错被catch捕捉到并且打印到
了控制台,所以你看不到报错

浏览器按F12开发工具,看一下有没有返回值或者有什么错误

你这种一般是后台报错了

下断点调试下,sql拼接有没有问题,还有数据库的连接有没有问题
另外username是关键字,要转义

难道不是调用out.write()函数来回发信息吗

应该是你提交成功后后台没有返回数据给前台显示吧

在userreg.jsp页面,你输入的注册数据,在转到userregister.jsp后,有没有成功获取,也就是在request.getParameter()取到的值是否为空。
如果可以的话,能把这两个jsp页面发到sph1573@163.com,我可以具体调试一下

没有信息显示不应该是正常的,因为你并没有跳转,或者输出什么东西,out.println()好像只会在后台输出,看看是不是这个原因,好像你的代码是没有问题的。

打开F12调试,服务器的错