2016-02-03 3 views
0

Я хочу отправить форму, не покидая мою текущую страницу, поэтому я использую этот метод ajaxi, кроме того, я использую мою отправку в onchange методом Select value.but, это не работает :отправить форму через метод AJAX при изменении поля выбора

<form action="" method="post" id="rati"> 
<select onchange="this.form.submit()" name="rate" style="width:130px;"> 
    <option value="1">☆</option> 
    <option value="2">☆☆</option> 
    <option value="3">☆☆☆</option> 
    <option value="4">☆☆☆☆</option> 
    <option value="5">☆☆☆☆☆</option> 
</select> 
</form> 


<script> 
    $(document).ready(function(e) { 
     $("#rati").submit(function(e) { 
      var url = "/saverate.bc?userid=18&id=122"; 
      $.ajax({ 
       type: "POST", 
       url: url, 
       data: $("#rati").serialize(), 
       success: function(data) { 
        $(".tnxforate").html(data) 
       } 
      }); 
      e.preventDefault(); 
     }); 
    }); 
</script> 
+0

почему вы подачи и отправки Аякса в то же время? – guradio

+0

cuz Я хочу просмотреть мой результат на той же странице, не выходя из –

+1

попробуйте этот путь https://jsfiddle.net/a5aq2kmk/1/ – guradio

ответ

0

Вы не должны прикреплять встроенный обработчик для этого. Когда вы получаете ответ через ajax, нет необходимости отправлять форму.

Попробуйте это:

$(document).ready(function(e) { 
 
    $("[name='rate']").on('change', function() { 
 
    var url = "/saverate.bc?userid=18&id=122"; 
 
    $.ajax({ 
 
     type: "POST", 
 
     url: url, 
 
     data: $("#rati").serialize(), 
 
     success: function(data) { 
 
     $(".tnxforate").html(data) 
 
     } 
 
    }); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
 
<form action="" method="post" id="rati"> 
 
    <select name="rate" style="width:130px;"> 
 
    <option value="1">☆</option> 
 
    <option value="2">☆☆</option> 
 
    <option value="3">☆☆☆</option> 
 
    <option value="4">☆☆☆☆</option> 
 
    <option value="5">☆☆☆☆☆</option> 
 
    </select> 
 
</form>

+0

ставка - это имя не id of select :) – guradio

+1

Да, вы правы. Обновлено! – Rayon

+0

поблагодарить вас за помощь –

Смежные вопросы