ajax формы не отправлены - PullRequest
0 голосов
/ 28 мая 2011

У меня очень простой скрипт для отправки формы.Это шаблон HTML:

 <table>
    <form action='.' method = 'post' id='form'>{% csrf_token %}
      {{ formset }}
      <tr><td><button type='button' id='button' value='view'>shsfj</button></td></tr>               
    </form>
 </table>
 <div id='right-here'></div>

И это js:

  $('#button').click(function(){
      $.get('/json', function(data){
      $('#right-here').replaceWith(
          "<div id='right-here'>"+data+"</div>"
      );                                
      });
      $("#form").ajaxForm(function(){
          alert("It's ok");
          });
  });

Так что у меня нетоповещения.Это означает, что форма не передается на сервер?Что случилось?Функция get () берет данные из другого представления, это другая история.

1 Ответ

1 голос
/ 28 мая 2011

Метод .ajaxForm () просто инициализирует форму.Форма должна быть отправлена ​​для того, чтобы что-то действительно произошло.

Вы должны поместить вызов ".ajaxForm ()" в обработчик "ready", а затем просто вызвать обработчик "click"submit () ":

$(function() {
  $('#form').ajaxForm(function() { alert("Ok"); });
});

$('#button').click(function(){
  $.get('/json', function(data){
  $('#right-here').replaceWith(
      "<div id='right-here'>"+data+"</div>"
  );                                
  });
  $("#form").submit();
});

В качестве альтернативы вы можете выполнить инициализацию и отправку за один шаг, используя" .ajaxSubmit () ".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...