2016-11-02 3 views
0

Я пытаюсь создать форму отправки, которая делает звонок getJSON для отображения ответа на шаблон html и отправляет входные данные. Но я могу только отправить ответ ввода или отображения, полученный от вызова getJSON. Я попытался удалить метод preventDefault и добавить его в свою функцию, но он все еще не работает. Благодарим вас за любые предложения!Форма ввода не отправляется после вызова getJSON

<form method="post" id="form"> 
    <div> 
     <input type="text" name="newpost" style="width:300px;" placeholder="post here..."> 
     {% if user %} 
      <input type="hidden" name="user_id" value="{{ user.key.id() }}"> 
      <input id="inputButton" type="submit" value="Done"> 
      <div id="jsonInfo"></div> 
      <script> 
       $(document).ready(function(){ 

           $('#inputButton').click(function (e) { 
            var URL = 'URLEXAMPLE'; 
            $.getJSON(URL, function(data){ 

            for (var i = 0; i < data.length; i++){ 
             var info = data[i].content; 
             $("#jsonInfo").append(info); 
            }; 
           }); 
          e.preventDefault(); 


         }); 


       }); 

      </script> 
     {% else %} 
      <input type="button" class="button_active" onclick="location.href='/login'" value="Done"> 
     {% endif %} 
    </div> 
</form> 

ответ

0

После ФОР сделать

$('#form').submit(); представить форму, e.preventDefault(); в настоящее время блокирует подачу формы по умолчанию, так что вы можете отправить запрос Аякса

+0

формы передается, но ответ AJAX исчезает немедленно – Young

+0

это нормальное поведение, которое вы перенаправляете со страницы man – madalinivascu

+0

Есть ли способ отправить ввод, а затем получить ответ AJAX одним щелчком мыши? – Young