<html:form action="/message?action=question">
    <table border="2">
    <tr>
    <td>留言</td>
    <td>赛事名称:<html:select property="contestname">
    <html:optionsCollection name="contest" value="contestName" label="contestName"/>
    </html:select>
    </td>
    </tr>
    <tr>
    <td valign="top">内容:</td>
    <td><html:textarea property="question"/></td>
    </tr>
    <tr>
    <td align="right" colspan="2"><html:submit value="发表"/></td>
    </tr>
    </table>
    </html:form>
这是JSP页面上的一张表单,我在输入留言提交后,跳回本页面,就在<html:textarea property="question"/>制定的文本框内出现了一串问号,求高人指点。

解决方案 »

  1.   

    可是我没在这个表单元素里填写任何东西啊?第一次进入这个页面是没有的,留言后提交就有了。是不是struts有什么机制啊?
      

  2.   

    用struts标签的话,表单数据会保存在ActionForm里面,而ActionForm则是被封装在request里面,提交再返回JSP页面时,struts会把ActionForm再set进request里面,所以数据还是会存在的。
      

  3.   

    兄弟,用form表单提交吧,我以前也是这种问题  
      

  4.   

    大概知道了,那该怎么解决呢,怎么删除AcitonForm提交后返回来原先的数据。
      

  5.   

    你先把jsp中的编码 设置成 UTF-8<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>在Action中设置 编码 request.setCharacterEncoding("UTF-8");这样应该就可以了吧
      

  6.   

    如果是struts1.0的话html:textarea里面设置属性,redisplay="false"From中的内容就不会自动显示了
      

  7.   


    struts1.2  ,刚学没几天,求教,怎么把提交后的东西删掉
      

  8.   

    用ajax动态提交,动作完成后,给个好的提示,多好啊,何必挑来挑去的
      

  9.   

    额 你写个过滤器  很简单写完之后 整个项目都能用 就不用担心出现乱码了 下面是我给你贴的代码
    这是package com.househire.servlet;import java.io.IOException;
    import java.io.UnsupportedEncodingException;import javax.servlet.ServletException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.ActionServlet;public class MyServlet extends ActionServlet{
    public void process(HttpServletRequest request,HttpServletResponse response) throws UnsupportedEncodingException{
    request.setCharacterEncoding("GBK");
    response.setContentType("text/html;charset=GBK");
    try {
    super.process(request, response);
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (ServletException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }

    }}
      

  10.   

    当然还要在web.xml里面配置下 <servlet>
        <servlet-name>action</servlet-name>
        <servlet-class>com.househire.servlet.MyServlet</servlet-class>
    <servlet-mapping>
        <servlet-name>action</servlet-name>
        <url-pattern>*.do</url-pattern>
    好了以后你项目里面就不会出现乱码了
      

  11.   

    同意楼上的说法。写过过滤器,然后再web.xml中配置信息即可
    可以解决乱码问题