【问题标题】:Form doesn't reset with javascript表单不使用 javascript 重置
【发布时间】:2012-12-05 14:58:13
【问题描述】:

我正在尝试重置表单,但它并没有清除之前的选择。因此,当我刷新页面并提交时,它会记住旧值并提交它们。即使我没有在表格上做出任何选择。这是代码:

<script>
 $(function(){ 
   $("#eventForm")[0].reset();
   });
</script>

谢谢

编辑:表格

<form id="eventForm">            
     <select name="eventer" id="abc">
        <option value="" disabled="disabled" selected="selected">Select  Event</option>
        <option value="USA">US</option>
        <option value="UK">UK/option>
        <option value="Fr">France</option>
     </select>

    <input type="submit" id="open" onclick="heading()" value="Start" />
    <input type="button" id="close" onclick="closeAnalysis()" value="Stop"/>

我尝试像这样清除它们,但没有成功:

$(document).ready(
   function(){
   $("#close").click(
    function(){
     var values = [];
     var selected = $("select").each(
      function(){
      values.push( $(this).val());
      });
    this.form.reset();
    for (i=0;i<selected.length;i++)
    $(selected[i]).val(values[i]);
  });
  }
 );

【问题讨论】:

  • 可能是特定于浏览器的,你用什么测试过?
  • @user94628:忽略我的回答,我在鼻窦感染时回答得很快,而且我的回答甚至不够准确或没有帮助。
  • @JoelEtherton:好的,没问题。
  • .reset() 不一定会清除这些字段,它会将它们重置为value="..." 属性提供的值。

标签: javascript jquery html forms


【解决方案1】:

reset() 将字段返回到页面加载时设置的初始值。它不会删除文本。如果要删除文本,则必须遍历元素并清除它们。

【讨论】:

  • 哇,我花了很长时间才明白这一点!
猜你喜欢
  • 1970-01-01
  • 2010-12-14
  • 2020-12-29
  • 2015-02-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-02
  • 2015-01-31
相关资源
最近更新 更多