2013-08-27 3 views
0

Ни один из подобных вопросов не справляется с проблемой из-под моего угла.Очистка содержимого ajaxed формы

У меня есть форма, в которой зарегистрирован пользователь. Я использую .post для обработки ajaxing. Вот код:

$('#register_user_form').submit(function(){ 
    $.post 
    (
     $(this).attr('action'), 
     $(this).serialize(), 
     function(data){ 
     console.log(data); 
     $('#alert_box2').html(data); 
     }, 
     "json" 
    ); 
    return false; 
    }); 

Я знаю, что я могу получить, если добавить $('#input_field_id').val(' '); до возвращения ЛЖИ. Но я должен был бы сделать это для каждого поля ввода. Есть ли более эффективный способ? Возможно, добавив один класс ко всем полям и очистив значение класса? У меня есть смысл, хотя это будет считаться «плохим кодом».

ответ

5

Можете ли вы не просто сбросить форму?

this.reset(); 
return false; 
+0

+1, я предпочитаю этот метод –

+0

+1 Если он после полной очистки в форме, это лучший способ сделать это. – MLeFevre

+0

Это победитель дня. '$ ('input'). val ('')' работал, но он очистил значение моей кнопки отправки, тем самым сделав пустую кнопку. – JDillon522

3

насчет всего:

$('input').val(''); 

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

+1

Вы должны использовать '$ ('# register_user_form input'). Val ('');' в случае, если на одной странице больше форм. –

+0

Это сработало, но оно также очистило содержимое кнопки отправки, сделав ее пустой кнопкой. 'this.reset();' был более простым и легко справился с этим. Спасибо, хотя – JDillon522

0

Гадание на вашем HTML, но вы могли бы сделать что-то вроде этого

$('#register_user_form :input').each(function() { 
    $(this).val(''); 
}) 
0

вы можете дать общее название класса для всех полей ввода, которые вы хотите, чтобы очистить и сделать это ...

$('classname').val(''); 

или обновления с помощью

location.reload(); 
0

Попробуйте это. Это только очистит входные значения в специальной форме, которую вы отправляете, и, таким образом, не очистите весь документ, если это проблема.

$('#register_user_form').submit(function(){ 
    var ref = $(this); 
    $.post 
    (
     $(this).attr('action'), 
     $(this).serialize(), 
     function(data){ 
     console.log(data); 
     $('#alert_box2').html(data); 
     ref.children('input').each(function(){ 
      $(this).val(''); 
     }); 
     }, 
     "json" 
    ); 
    return false; 
    }); 
Смежные вопросы