<form method="get" id="form" name="form" action="">  
     请输入数字: 
     <input type="text" name="n">
     <input type="submit" value="提交" name=submit>
</form>
<%  if (n!=null) out.println(2*n)
%>
     
     这是表单中的内容。请问各位高手,如何改才能够在点击提交按钮后页面不会被重置?也就是text框中仍出现出入的内容,但同时在点击“提交”按钮之后能够出现结果。
     求详细解答谢谢!
     
PS:试了好多次,点击提交之后text框中的内容都不见了。(+﹏+)~

解决方案 »

  1.   

    不重置就需要自己回填这个信息,类似于:<input type="text" name="n" value="<%=request.getParameter("n")%>">当然这是个例子,逻辑上你应该在前面处理好,并且解决 null 的情况。
      

  2.   


        但是这样的话,页面一开始打开的时候在text框中就会自动出现“null”值,并且点击“提交”之后,text框中出现的不是填入的数字,而是“null”值,这如何解决呢?    能够请楼上大虾再说清楚吗?或者有没有实例代码?
      

  3.   


        拜托各位了!这个问题已经花费了我一个星期,用过session ,但提交后还是会被刷新重置。。欲哭
       
        o(>﹏<)o
      

  4.   


    当然可以解决,汗我以为你能搞定
    尽量放在页面的前面(都放一起就行了):
    <%
       String n = request.getParameter("n");
       if (n == null) n = ""; // 空白字符串
    %>后面:
    <input type="text" name="n" value="<%=n%>">
      

  5.   


    1L说的很清楚了。
    LZ尽量自己多想想,这个问题你自己完全可以解决。我就不信5楼的代码你自己不会写。尽量少求代码。根据思路,自己多想,才能提高。
      

  6.   

    还有一种办法是通过ajax方式提交,不刷新页面
      

  7.   


    嗯,你说得对,以后我会自己先想想。惭愧ing
      

  8.   

    ajax提交后台运行,界面值是不会变的
      

  9.   

    1:AJAX
    2: 利用IE缓存。 即提交完成后 
    Response.write("<script>history.back();</script>")