case_study NO.1:关于ajax请求与From表达提交冲突的case study!

case_study NO.1:关于ajax请求与From表达提交冲突的case study!

case:

springboot和freemarker实现login页面进行点击按钮注册信息,login页面加载成功后点击按钮发起ajax请求,此时请求时200状态,但Response没有数据,并且浏览器的url中会把请求参数拼接到后面,而且是当前页面的url后面(当前页面的url为localhost:8080/login),请求的url是/register,这让我十分费解,调戏了度娘两天愣是没找到结果(也是自己菜),今天问了个朋友,他说让我把form 改成 div试试,果不其然,正常了,Response里也有返回值信息了。

study

朋友解释:form 表单会有个自动提交的操作(不过我代码里不是用<input type='submit' /> 而是用<button></button>,但也会发生自动提交,也是见鬼),因此如果用form 的话就尽量用它的action 属性,如果用ajax提交就尽量不要用form 括起来

错误截图

  • 请求头信息(此时还算正常)
    case_study NO.1:关于ajax请求与From表达提交冲突的case study!

  • 请求响应信息(不正常)
    case_study NO.1:关于ajax请求与From表达提交冲突的case study!

  • 点击弹窗的确定按钮后(浏览器会被拼接参数信息)
    case_study NO.1:关于ajax请求与From表达提交冲突的case study!

正常信息

  • 正常情况
    case_study NO.1:关于ajax请求与From表达提交冲突的case study!