求大神帮忙,springMVC参数传递问题

「已注销」 2015-09-29 08:30:21
1.页面js代码
	$(function(){
$("#search").click(function(){
var userId = $("#userId").val();
alert(userId);
$("#searchForm").action="${context}/supervisor/userFormAccount/userDetail?userId="+userId;
alert("${context}/supervisor/userFormAccount/userDetail?userId="+userId);
$("#searchForm").submit();
});
});

2.弹窗


3.地址栏



4.取消userId赋值,弹窗如下



问题来了:
为什么地址栏没有变化,见图片,且后台取到的userId值仍旧为16,为什么会这样呢?????


ps:使用springMVC,controller取值如下:
public String getUserAccountList(Model model,@RequestParam(required=true) Integer userId,
){......省略具体代码}


...全文
378 22 打赏 收藏 举报
写回复
22 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
我想你是误会了MVC里面的Form,跟JS里面的Submit提交的form表单的效果吧。你js里面的UserID没有赋值,所以是und,你前台Form里面UID肯定不为空吧,所以后台能通过参数取到那个ID的数值。话说你没说你的.取消userId赋值是怎么个意思?是修改js里面的,还是Form里面的。难判断。
  • 打赏
  • 举报
回复
DY1201 2015-10-08
看一下五楼说的。另外你可以自己写死一个$("#searchForm").action="${context}/supervisor/userFormAccount/userDetail?userId="+111&userName="+lisi;后台接受一下userId和userName,看看userId的值是多少,userName是多少
  • 打赏
  • 举报
回复
DY1201 2015-10-08
引用 5 楼 l821398100 的回复:
我怀疑你的 $("#searchForm").action=“” 有问题,换成 $("#searchForm").attr(‘action’,‘’)试下; 至于后台获取到了参数问题,你的from的action是不是本来就有值,而userid在from里面的,那你submit时坑顶能取到呀
顶一下,如果不是缓存的问题,那么就是这个问题可能性比较大,lz看看吧!
  • 打赏
  • 举报
回复
小雷同学 2015-10-08
引用 10 楼 javandysong 的回复:
[quote=引用 5 楼 l821398100 的回复:] 我怀疑你的 $("#searchForm").action=“” 有问题,换成 $("#searchForm").attr(‘action’,‘’)试下; 至于后台获取到了参数问题,你的from的action是不是本来就有值,而userid在from里面的,那你submit时坑顶能取到呀
换了一样的效果. 第二次已经取消给userId赋值了,弹窗变成了undefined[/quote]能看下你的html的代码吗?就是你from是怎么写的?
  • 打赏
  • 举报
回复
scmod 2015-10-06
还有我试了下$("#searchForm").action好像没效果的 按理应该是$("#searchForm").attr("action")或者是$("#searchForm")[0].action才能操作他的action值 不知道楼主之前的action怎么定义进去的
  • 打赏
  • 举报
回复
scmod 2015-10-06
话说userId是input里面的不... 按理有这个name的input不会取出来undefined我记得,什么都没填取到的应该是个""空字符串 地址栏应该是?userId=这样的格式后面不会跟什么东西的
  • 打赏
  • 举报
回复
豆芽炒粉丝 2015-10-06
你排除缓存的问题了吗?
  • 打赏
  • 举报
回复
「已注销」 2015-10-01
引用 13 楼 sgjingwen1987 的回复:
userId 的值是16
首次是16,第二次弹窗值都是undefined,可以后台依然获取的是16
  • 打赏
  • 举报
回复
NANU-NANA 2015-10-01
你是不是第二次修改后没编译啊。 保存修改,编译,重新启动服务器,Ctrl F5刷新页面
  • 打赏
  • 举报
回复
「已注销」 2015-09-30
引用 8 楼 mh_ma 的回复:
应该是缓存,有的时候确实清理了缓存,还是原先的值,这种问题确实很烦
有没好的解决方案?
  • 打赏
  • 举报
回复
「已注销」 2015-09-30
引用 5 楼 l821398100 的回复:
我怀疑你的 $("#searchForm").action=“” 有问题,换成 $("#searchForm").attr(‘action’,‘’)试下; 至于后台获取到了参数问题,你的from的action是不是本来就有值,而userid在from里面的,那你submit时坑顶能取到呀
换了一样的效果. 第二次已经取消给userId赋值了,弹窗变成了undefined
  • 打赏
  • 举报
回复
「已注销」 2015-09-30
引用 6 楼 u010046871 的回复:
$("#searchForm")[0].action=xxxx 或者$("#searchForm").attr(‘action’,‘’)
一样的效果
  • 打赏
  • 举报
回复
王子文龙 2015-09-30
应该是缓存,有的时候确实清理了缓存,还是原先的值,这种问题确实很烦
  • 打赏
  • 举报
回复
从小就很呆 2015-09-30
肯定是缓存,没传参怎么会取到值呢?
  • 打赏
  • 举报
回复
825609451 2015-09-30
$("#searchForm")[0].action=xxxx 或者$("#searchForm").attr(‘action’,‘’)
  • 打赏
  • 举报
回复
小雷同学 2015-09-30
我怀疑你的 $("#searchForm").action=“” 有问题,换成 $("#searchForm").attr(‘action’,‘’)试下; 至于后台获取到了参数问题,你的from的action是不是本来就有值,而userid在from里面的,那你submit时坑顶能取到呀
  • 打赏
  • 举报
回复
「已注销」 2015-09-30
引用 2 楼 xuanfenglover 的回复:
清理下缓存,重启服务试试
缓存清理了,换个浏览器也是一样.
  • 打赏
  • 举报
回复
「已注销」 2015-09-30
缓存清理了,换个浏览器也是一样.
  • 打赏
  • 举报
回复
taxuepiaiyi 2015-09-30
userId 的值是16
  • 打赏
  • 举报
回复
wrong1111 2015-09-30
ctrl+F5
  • 打赏
  • 举报
回复
加载更多回复(2)
发帖
Web 开发

8.0w+

社区成员

Java Web 开发
社区管理员
  • Web 开发社区
加入社区
帖子事件
创建了帖子
2015-09-29 08:30
社区公告
暂无公告