我想清除表单中的所有输入和文本区域字段。当使用reset类的输入按钮时,它的工作原理如下:

$(".reset").bind("click", function() {
  $("input[type=text], textarea").val("");
});

这将清除页面上的所有字段,而不仅仅是表单中的字段。我的选择器看起来像什么形式的实际重置按钮生活?


当前回答

最简单和最好的解决方案是- $(" #形式”)[0].reset ();

不要在这里用- $ () [0] .reset ();

其他回答

通过使用JQuery的.trigger()和原生javascript的.reset()的组合,可以将所有表单元素重置为空白状态。

$(".reset").click(function(){
    $("#<form_id>").trigger("reset");
});

将<form_id>替换为form的id来重置。

我用这个:

$(".reset").click(function() {
  $('input[type=text]').each(function(){
     $(this).val('');
  });
});

这是我的按钮:

<a href="#" class="reset">
  <i class="fa fa-close"></i>
     Reset
</a>

我有个最简单的重置姿势的技巧

jQuery("#review-form")[0].reset();

$("#review-form").get().reset();

经过测试和验证的代码:

  $( document ).ready(function() {
    $('#messageForm').submit(function(e){
       e.preventDefault();
    });
    $('#send').click(function(e){
      $("#messageForm")[0].reset();
    });
  });

Javascript必须包含在$(document)中。准备好了,而且必须符合你的逻辑。

如果您使用选择器并使值为空值,这不是重置表单,而是使所有字段为空。重置是从服务器端加载表单后,使表单成为用户任何编辑操作之前的状态。如果有一个名为“username”的输入,并且该用户名是从服务器端预填充的,本页上的大多数解决方案将从输入中删除该值,而不是将其重置为用户更改之前的值。如果你需要重置表单,使用这个:

$('#myform')[0].reset();

如果您不需要重置表单,而是用一些值填充所有输入,例如空值,那么您可以使用其他注释中的大多数解决方案。