我正在将ajax请求发送到mvc控制器,但是请求完成后,查询字符串会附加到我的url奇怪的行为或我丢失了某些内容。 我的jQuery代码。
pom.xml
该视图具有带有onclick功能的html按钮
maven-resources-plugin
我的MVC网址在请求之前 http://localhost:4149/Student 请求后我的MVC网址 http://localhost:4149/Student?firstname=martin&gender=male
我不知道为什么在ajax调用后附加查询字符串。 我的MVC控制器代码。
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<id>copy-resources</id>
<!-- here the phase you need -->
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.basedir}/sub-project2/sub-project2-web/src/main/resources</outputDirectory>
<resources>
<resource>
<directory>${project.basedir}/src/non-packaged-resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
答案 0 :(得分:0)
实际上,您的按钮类型为submit
,并且在同一按钮上具有onclick处理程序,并且您正在尝试在该处理程序中处理表单提交。对吧?
尽管您的按钮单击处理程序开始执行,但您的按钮类型为submit
,因此您的HTML Form
将被提交,这就是浏览器URL更改的原因。
有两种解决方法。或者将您的onsubmit
事件挂在HTML Form
上,并在处理程序中并返回false
,这样它就不会提交表单,然后您的按钮处理程序将使用ajax发布数据,或者另一个是更改按钮从submit
到button
<button type="button" class="btn btn-success" onclick="addstudent()" id="insertbtn">Sign in
</button>
希望有帮助。