解决方案 »

  1.   

    public void setParam(String param) {
      this.param = param;
     
      

  2.   

    回复1楼:我在前台ie调试过,传值都没有问题,而且后台使用request.getParameter()是可以获取到值的
      

  3.   

    我自己测试了一遍,没有问题,可以接收到值,你再看看你的
    <script type="text/javascript" src="jquery-1.4.2.min.js"></script>
      <script type="text/javascript">
      
      $(document).ready(function(){
      $("#button").click(function(){   
      $.ajax({
        type: "POST",
        url: 'help.action',
        data: {"ids":"id"},
        success : function(d) {
            var json = $.parseJSON(d);
            if (json.success) {
                datagrid
                        .datagrid('reload');
                p.dialog('close');
            }
            parent.sy.messagerShow({
                msg : json.msg,
                title : '提示'
            });       
       }
    }); 
      });   </script>
    后台Action:
    String ids;
      public String getIds() {
    return ids;
    }
    public void setIds(String ids) {
    this.ids = ids;
    }
    public void help(){
    if(!ids.equals(""))
    System.out.print(ids);
    else
    System.out.print("aaa");

    }
      

  4.   

    1.看一看有没有重复name的属性。2.你定义成public String ids; 试一试。3.{"ids":id}, 你确定你的id有值吗?你把id换个数字试一试看看后台能否接收到。
      

  5.   

     $.ajax({
        type: "POST",  
    这个是走AJAX的 传值 不是通过FORM表单提交的 struts2拦截不到吧 
    我一直都是手动request后台获取的
      

  6.   

    你在页面form中定义了ids没
    我拿你代码测试没有问题,之前action是注解方式的没问题,后来改成配置文件,才出现的这个问题。
      

  7.   

    ids不是你给传的值吗,你给的id不就是ids的值吗,你的form我没看到,不知道你怎么写的!
    我的form就是一个按钮
    <form name='form1' action="#" method="post">
    <input type="button" id="button" name="opType" value="button" />
    </form> 
      

  8.   

    终于查找原因了:
    是因为action用了模型驱动,模型驱动对应bean中含有ids,我又在action中声明了ids;
    是默认拦截器的执行顺序问题