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

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

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


当前回答

使用Javascript,您可以简单地使用以下语法getElementById("your-form-id").reset();

你也可以通过调用重置函数来使用jquery $('#your-form-id')[0].reset();

记得不要忘记[0]。如果,您将得到以下错误

TypeError: $(…)。重置不是一个函数

JQuery还提供了一个可以使用的事件

$ (' # form_id ') .trigger(“重置”);

我试过了,成功了。

注意:需要注意的是,这些方法只会将表单重置为服务器在页面加载时设置的初始值。这意味着如果你的输入在你做随机改变之前被设置为值“set value”,那么在reset方法被调用后,该字段将被重置为相同的值。

希望能有所帮助

其他回答

我在这里看到的代码和相关的SO问题似乎不完整。

重置表单意味着从HTML中设置原始值,所以我根据上面的代码将其放在一个小项目中:

            $(':input', this)
                .not(':button, :submit, :reset, :hidden')
                .each(function(i,e) {
                    $(e).val($(e).attr('value') || '')
                        .prop('checked',  false)
                        .prop('selected', false)
                })

            $('option[selected]', this).prop('selected', true)
            $('input[checked]',   this).prop('checked',  true)
            $('textarea',         this).each(function(i,e) { $(e).val($(e).html()) })

如果我遗漏了什么或者有什么需要改进的地方,请告诉我。

这不会处理表单输入字段默认值为非空的情况。

应该可以工作

$('yourdiv').find('form')[0].reset();

你们中的一些人抱怨无线电和诸如此类的默认“已检查”状态被清除…你所要做的就是将:radio,:复选框选择器添加到.not中,问题就解决了。

如果你不能让所有其他重置函数工作,这个可以。

改编自ngen的回答 函数form_reset (formID) { $(':输入',' # ' + formID) 另(‘:按钮’,‘:提交’,”:重置”,“:隐藏”,“:广播”,“:复选框”) .val ("); }

@using (Ajax.BeginForm("Create", "AcceptanceQualityDefect", new AjaxOptions()
{
    OnSuccess = "ClearInput",
    HttpMethod = "Post",
    UpdateTargetId = "defect-list",
    InsertionMode = InsertionMode.Replace
}, new { @id = "frmID" })) 

frmID是表单的标识 我们调用JavaScript函数的名称为"ClearInput" <脚本type = " text / javascript”> 函数ClearInput() { //创建视图 $ (" # frmID ") . get (0) .reset (); } > < /脚本 如果这两项你都做对了,那么你将无法阻止它的工作……

当页面包含一个涉及IHttpHandler请求处理(captcha)的web用户控件调用时,以上任何一种方法都不适用。 在发送请求(用于图像处理)后,下面的代码不清除表单上的字段(在发送HttpHandler请求之前),一切都正常工作。

<input type="reset"  value="ClearAllFields" onclick="ClearContact()" />

 <script type="text/javascript">
       function ClearContact() {
           ("form :text").val("");
       }
    </script>