jquery - 如何在jsp中使用jquery提交表单

标签 jquery asp.net-mvc jsp post

在 ASP.net MVC 中,使用以下代码片段,我们可以将更改密码数据发送到 Controller 。在 Controller 中,我们可以将发布的数据转换为 ChangepasswordReq 对象,然后我们就可以完成我们的业务了。现在我正在 jsp 中寻找与此等效的内容。客户端与服务器端如何通信?我想传输带有多个​​控件的更大表单。(我仅使用 html 来构建我的页面)。任何帮助将不胜感激。

 var ChangeReq = { CurrentPassword: epwd, NewPassword: newpwd }
 var jsondata = JSON.stringify(ChangeReq)

            $.ajax({
                type: 'POST',
                url: "/Account/ChangePassword",
                cache: false,
                timeout: 10000,
                contentType: "application/json; charset=utf-8",
                success: function (_results) {
                    //do something

                },
                error: function (_results) {
                   //do something
                }
            });


  [HttpPost]
  public ActionResult ChangePassword(ChangepasswordReq _ChangepasswordReq)
  {
     //do the business
  }

  public class ChangepasswordReq
    {
        public String CurrentPassword { get; set; }
        public String NewPassword { get; set; }
    }
<小时/>

我已经尝试过以下方法。但就我而言,我动态生成一些控件。由于动态控件的数量不同,我无法在 Controller 中正确获取它们。在jsp中是否有更好的方法来像asp.net MVC中那样进行url路由。(比@RequestMapping(value = "/ChangePassword", method = RequestMethod.POST)更好) 如何在jsp中正确使用jquery。(请帮助我编写客户端和服务器端代码)

@RequestMapping(value = "/ChangePassword", method = RequestMethod.POST)
    public String home(@RequestParam("Currentpasswordtxtboxname") String Currentpassword,@RequestParam("NewPasswordtextboxname") String Newpassword, Locale locale, Model model) {
// do business
}

最佳答案

我发现了一些东西Here

<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
$(document).ready(function() {
    function Savedata() {  
    Var data={Username:$("#txtUsername").[0].value, CurrentPassword:  $("#txtCurrentpwd").[0].value, NewPassword: $("#txtNewpwd").[0].value }

   jsondata=Json.stringify(data);
   $.get('ActionServlet',jsondata,function(responseJson) {   
        //do something with response json
        });
    });
});         
 //Can use Jquery post also as in question
</script>

在服务器端我们可以获取参数为

 protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException 
 {
  String Username =request.getParameter("Username");
  String CurrentPwd =request.getParameter("CurrentPassword");
  String Newpwd =request.getParameter("NewPassword");
 }

在 web.xml 文件中

<servlet>
  <servlet-name>ActionServlet</servlet-name>
  <servlet-class>MyProject.ActionServlet</servlet-class>
</servlet>
<servlet-mapping>
  <servlet-name>ActionServlet</servlet-name>
  <url-pattern>/ActionServlet/*</url-pattern>
</servlet-mapping>

关于jquery - 如何在jsp中使用jquery提交表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10883592/

相关文章:

asp.net-mvc - 如何在没有 Visual Studio 的情况下开发一个简单的 ASP.NET MVC 项目

javascript - ASP.NET MVC 3 - Ajax 更新表 - 模型

asp.net-mvc - 刷新与输入 URL 和按 Enter 键之间有什么不同?

java - JSP中元素顺序的问题

java - 如何给jsp传参数 :include via c:set? JSP中变量​​的作用域是什么?

javascript - jquery-tabledit 不发送标识符

javascript - Flask,Ajax,在 url 中获取 ajax url 的值

javascript - 使用 jquery 合并列表项的文本,同时保持相同的顺序

Javascript 在点击时添加类

javascript - 将 GET 参数传递给 JavaScript 函数?