JQuery AJAX формы отправить - PullRequest
2 голосов
/ 20 марта 2012

Этот код правильный? Я пытаюсь отправить его, а также хочу отправить, если текстовая область снова будет пустой.

<script type="text/javascript">
$(document).ready(function(){

    $("form#submit").submit(function() {
        // we want to store the values from the form input box, then send via ajax below
        var fid = $(".messag").attr("id");
        var val = $("#mess_ar").val();
        $.ajax({
            type: "POST",
            url: "send_message.php",
            data: "fid="+ fid +"&val="+ val,
            success: function(){
                    $("#mess_ar").
            }
        });
        return false;
    });
}):
</script>

Я пытаюсь загрузить это:

<form id="submit" method="POST">
<textarea name="mess_cont" id="mess_ar" autofocus="autofocus" cols="70" rows="5">      </textarea>
<button id="mess_but" type="submit">Send</button>
</form>

Thankx ...

Ответы [ 3 ]

3 голосов
/ 20 марта 2012

выглядит хорошо.Чтобы очистить текстовую область, используйте следующее в обратном вызове ajax success:

$("#mess_ar").val('');
2 голосов
/ 20 марта 2012
​$(function(){
    $("form#submit").submit(function(e){
        e.preventDefault();
        var fid = $(".messag").attr("id");
        var val = $("#mess_ar").val();
        $.ajax({
            type: "POST",
            url: "send_message.php",
            data: "fid="+ fid +"&val="+ val,
            success: function(){
                $("#mess_ar").val("");
            }
        });
    });
});​

Используйте

$("#submit").on('submit', function(e){...});

вместо

$("#submit").submit(function(e){...});

, если вы используете последнюю версию jquery.

2 голосов
/ 20 марта 2012

Что вы на самом деле ищете?Он также возвращает данные в ответ?Добавьте функции для отслеживания вашей ошибки тоже.Сделайте что-то вроде

<script type="text/javascript">
$(document).ready(function(){

    $("form#submit").submit(function() {
       // we want to store the values from the form input box, then send via ajax below
       var fid = $(".messag").attr("id");
       var val = $("#mess_ar").val();
       $.ajax({
          type: "POST",
          url: "send_message.php",
          data: "fid="+ fid +"&val="+ val,
          success: function(incoming_data){
             // ALERT incoming data if coming
             $("#mess_ar").text(""); // DO YOUR JOB CONTINUOU
          },
          error: function() { 
             alert("BROKEN REQUEST.");
          }
       });
       return false;
   });

});
</script>

В остальном вроде все нормально.

...