【问题标题】:How to get form data to servlet in array list using jQuery [duplicate]如何使用jQuery将表单数据获取到数组列表中的servlet [重复]
【发布时间】:2016-01-20 07:30:13
【问题描述】:
<form id="form1" name="form1" method="post">
    User Name:<input type="text" name="user" id="user"/>
    Password <input type="password" name="pass" id="pass"/>
    Phone <input type="number" name="phone" id="phone"/>
    Email <input type="email" name="email" id="email"/>
    State <input type="text" name="state" id="text"/>
    <input type="button"  onclick="return register();" value="submit"/><br/>
    <div id="welcometext"></div>
</form>
function register() { 
    var val = $('#form1 :input').serialize*();
    $.post('ActionServlet', { data: val }, function (responseText) {
        $('#welcometext').text(responseText);
    });       
}

现在我想在 Servlet 中获取这些数据并添加到 mysql 数据库并获取数据并将该数据响应到 div 标签中的表单。请帮帮我。

【问题讨论】:

  • 使用 $.post 向服务器发送数据。
  • 在这种情况下,您对$.param 的使用非常奇怪(并且使用不正确)。我想你想改用serialize()
  • 我同意,你绝对应该使用var val = $('#form1 :input').serialize();。另外,你为什么使用decodeURIComponent?您即将向后端发送数据,因此最终应该是encodeURIComponent,但由于.serialize()而没有必要
  • 感谢所有建议,希望代码现在格式良好

标签: javascript jquery html servlets


【解决方案1】:

不确定你是否在使用 spring 控制器,但希望这个 sn-p 对你有帮助

var formFields = {
            "user" : $("#user").val(),
            "password" :$("#pass").val(),
             //.... other fields
 }

function register() { 
    $.post('ActionServlet', { data: formFields}, function (responseText) {
        $('#welcometext').text(responseText);
    });       
}

小服务程序

import javax.servlet.*;
import javax.servlet.http.*;

public class ActionServlet extends HttpServlet {
  public String getData(HttpServletRequest request, HttpServletResponse response)
  throws ServletException, IOException {
      String name = request.getParameter("parameter you want to retrive");
    return "response you want to send";
  }

注意:您的表单有一个字段密码,如果您使用 ajax 发送此数据,密码是安全身份,将在请求中可见。所以最好使用表单submit而不是使用ajax提交表单

【讨论】:

  • 我想检索所有&先生,我使用的是servlet jsp而不是spring框架,但我明白了,谢谢
【解决方案2】:

你可以使用 jquery ajaxForm http://malsup.com/jquery/form/

$('#form1').ajaxForm(function(response){
  //response from server
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-31
    • 1970-01-01
    • 1970-01-01
    • 2011-01-17
    • 1970-01-01
    • 1970-01-01
    • 2020-04-09
    • 2012-05-27
    相关资源
    最近更新 更多