0

从我的角度来看,没有一个类似的问题真正解决了这个问题。

我有一个注册用户的表格。我.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(' ');我知道如果我在返回 false 之前添加,我可以通过。但是我必须对每个输入字段都这样做。有没有更有效的方法?也许将相同的类添加到所有字段并清除该类的值?我有一种感觉,虽然那会被认为是“坏代码”。

4

5 回答 5

5

你不能只重置表格吗?

this.reset();
return false;
于 2013-08-27T16:28:38.483 回答
3

只是:

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

此外,为您想要清除的每个元素添加类名也没有错。

于 2013-08-27T16:26:40.640 回答
0

猜测你的 HTML,但你可以做这样的事情

$('#register_user_form :input').each(function() {
    $(this).val('');
})
于 2013-08-27T16:27:46.700 回答
0

您可以为要清除的所有输入字段提供一个通用类名并执行此操作...

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

或使用刷新

location.reload();
于 2013-08-27T16:27:56.733 回答
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;
  });
于 2013-08-27T16:28:13.423 回答