使用AJAX从表单发送所有数据

时间:2015-10-31 23:09:19

标签: javascript jquery html css ajax

我遇到了使用Bootstrap创建的联系表单的问题。我需要创建提交按钮,以便使用AJAX从这个表单中发送所有数据,但是我必须在没有任何javascript框架或库的情况下这样做(这是我的学校作业,所以是的,我真的不能使用它们......) 。

我不知道如何在没有jQuery的情况下做到这一点,所以我们将非常感谢任何帮助。

<div class="container">
   <form class="form-horizontal" role="form">
<div class="form-group">
   <label class="control-label col-sm-2" for="usr">Name:</label>
   <div class="col-sm-10">
        <input type="text" class="form-control" id="usr" placeholder="Enter name" value="" aria-describedby="name-format" required aria-required=”true” pattern="[A-Za-z-0-9]+\s[A-Za-z-'0-9]+"  title="firstname lastname">
   </div>
</div>

<div class="form-group">
<label class="control-label col-sm-2" for="email">Email:</label>
  <div class="col-sm-10">
       <input type="email" class="form-control" id="email" name="email" placeholder="Enter email" required>
  </div>
</div>

<div class="form-group">
<label for="comment">Message:</label>
  <textarea class="form-control" rows="5" id="comment"></textarea>
</div>

<div class="form-group"> 
  <div class="col-sm-offset-2 col-sm-2 pull-right">
     <button type="submit" class="btn btn-primary">Send</button>
  </div>
</div>

2 个答案:

答案 0 :(得分:0)

在表单中添加ID:

<form class="form-horizontal" role="form" id="idadd">

并使用:

    $('#idadd').bind("submit", function() {
            $.ajax({
                type        : "POST",
                cache   : false,
                url     : "toto.php",
                data        : $(this).serializeArray(),
                success: function(msg){
            // code
                }
                }
        });
        return false;
    });

答案 1 :(得分:0)

查找要发送的元素的每个值。 例如:

var user = document.getElementById('usr').value;
var email =  = document.getElementById('email').value;
var comment =  = document.getElementById('comment').value;
...
var data = 'user=' + encodeURIComponent(user) + '&email=' + ...;

....
xhr.send(data);