form id="login_form" name="login_form">
<table width="758" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td background="images/home-001.jpg" width="506" height="126"></td>
    <td background="images/home-002.jpg" width="252" height="126"></td>
  </tr>
  <tr>
    <td background="images/home-003.jpg" width="506" height="30"></td>
    <td background="images/home-004.jpg" width="252" height="30" align="left"><input name="user.loginName" type="text" id="username" size="22" /></td>
  </tr>
  <tr>
    <td background="images/home-005.jpg" width="506" height="11"></td>
    <td background="images/home-006.jpg" width="252" height="11"></td>
  </tr>
  <tr>
    <td background="images/home-007.jpg" width="506" height="30"></td>
    <td background="images/home-008.jpg" width="252" height="30" align="left"><input name="user.loginPassword" type="text" id="password" size="22" /></td>
  </tr>
  <tr>
    <td colspan="2"><table width="758" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td background="images/home-009.jpg" width="397" height="63"></td>
        <td background="images/home-010.jpg" width="361" height="63"><table width="300" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td align="right"><input type="image" id="logon" src="images/btn-YES.gif" /></td>
            <td align="center"><input type="image" id="cancel" src="images/btn-NO.gif" /></td>
          </tr>
        </table></td>
      </tr>
    </table></td>
    </tr>
  <tr>
    <td><img src="images/home-011.jpg" width="506" height="147" /></td>
    <td><img src="images/home-012.jpg" width="252" height="147" /></td>
  </tr>
</table>
</form>js:
     $(document).ready(function(){
$("#logon").bind("click",function(){
$("#login_form").attr({action:"loginAction_login",method:"post"});
$("#login_form").submit();
});
});
java:       public String login(){
System.out.println(user.getLoginName());
System.out.println(user.getLoginPassword());
return "login";
}为什么我在后台只能打印出loginPassword 如果我把前台的input里面name="user.loginPassword"删掉就可以拿到loginName值 这是什么呢? 很让小弟困扰  有没有哪位大哥愿意帮下我的?

解决方案 »

  1.   

    写的太多了,先从一个简单的form开始排查
      

  2.   

    按照这样的说法是不是表单提交的方式有关,你换成method="post"试试
      

  3.   

    我遇到了的,很奇怪,用户名和密码总有一个是null,两个没有区别,都在一个表单里,现在没找到原因,暂时是在Action里用两个字符串接,再set给实体类的属性。我发现不直接用实体类接就没有这个问题。
    奇怪的是我出问题的也是user,其他实体完全正常。有待继续解决。
      

  4.   


    最终找到原因了,,楼主,你看看action里面是不是没有写user的get方法。。
    加上去就可以了,因为action每次动态复制都会调用getUser方法,因为找不到getUser,所以个参数都重新new一次User然后set。。
      

  5.   

    传值就那么几个问题,一个页面名字.一个实体get(),set(),一个提交方式仔细一点就OK了.
      

  6.   

    估计是你的get() set()那出了问题
      

  7.   


    最终找到原因了,,楼主,你看看action里面是不是没有写user的get方法。。
    加上去就可以了,因为action每次动态复制都会调用getUser方法,因为找不到getUser,所以个参数都重新new一次User然后set。。
    哈哈,大哥,你沒有认真看啊,首先get,set肯定都是有的,我说的同一个user,一个属性可以拿到,另一个拿不到,没有的话都应该拿不到.实体类检查了,没有问题.我后来改了一下代码,拿得到的和拿不到的交换了...
      

  8.   

    很简单啊,一定是你没有定义set和get方法中的其中一个,你可以在每个set和get方法中都把你的数据打印出来,还有构造方法中也要打印出来,你这个问题90%是因为你没有定义相应的get方法,不要以为传值只是用到了set方法,其实你传递一个name的时候生成了一个user对象,如果你不提供get方法那么当你setPassword的时候还会生成一个user所以总是后面的覆盖前面的。