欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

记netmvc中Html.BeginForm的一个大坑

程序员文章站 2022-03-20 12:43:40
在asp.net mvc中,很常使用using(Html.BeginForm()){}来生成表单提交 不传入参数时,默认提交到原始url 最坑的是,此表单自动提交时,会将所在页面的原始url的参数也一并提交到后台 故,如果用Html.BeginForm生成的表单要在js中提交,则必须确保原始url的 ......

在asp.net mvc中,很常使用using(html.beginform()){}来生成表单提交

不传入参数时,默认提交到原始url

最坑的是,此表单自动提交时,会将所在页面的原始url的参数也一并提交到后台

故,如果用html.beginform生成的表单要在js中提交,则必须确保原始url的参数是否还有作用

 

例如:

  通过get /member/add?code=1得到页面

  此页面中使用了using(html.beginform()){},但未将code作为表单数据

  然而点击表单中submit按钮自动提交时,post到后台/member/add,也能取到此code值,参数名还忽略大小写

  而若在js中写上$(form).submit()却不会有code,只提交表单中的数据