表单重置函数返回undefined

时间:2017-02-14 07:41:33

标签: javascript jquery html forms input

我正在尝试通过以下方式重置表单输入:

$("#form_employee_job")[0].reset();

输入仍然填充,控制台返回undefined

我失踪了什么?

enter image description here

3 个答案:

答案 0 :(得分:1)

看看这个小提琴https://jsfiddle.net/yn2xeq6z/1/

如果您的表单ID为form_employee_job,则所有内容都应按预期工作。表格的所有输入字段都将被清除。

答案 1 :(得分:1)

在您发布的代码之外,也许您错过了其他内容?

这是一个有效的jsfiddle,可以帮助您。当您按下按钮时,此示例将重置表单。

HTML

<form id='form_employee_job'>
  <input type='text'/>
</form>
<button id="btn">reset</button>

JS

$(document).ready(function() {
  $("#btn").on("click", function() {
    $("#form_employee_job")[0].reset();
  });
});

答案 2 :(得分:1)

我相信您的表单可能会在POST / GET请求的字段中包含POST数据。在这种情况下,表单重置将不起作用。

我不能100%确定这是错误还是它的工作方式。

如果您以编程方式将某些值绑定到输入,则可能无法重置。

为了实现重置,您可以清空表单输入。

$(':input','#myform')
    .not(':button, :submit, :reset, :hidden')
    .val('')
    .removeAttr('checked')
    .removeAttr('selected');

请参阅此帖子Resetting a multi-stage form with jQuery