【问题标题】:Is there an easy way to clear an ASP.NET form?有没有一种简单的方法来清除 ASP.NET 表单?
【发布时间】:2008-11-08 15:59:56
【问题描述】:

是否有一种简单的方法可以重置 asp.net 表单中的所有文本字段 - 例如 html 控件的重置按钮?

【问题讨论】:

标签: asp.net-2.0


【解决方案1】:

取决于您对重置的定义。做这样的事情的一个简单的方法可能是一个带有代码隐藏的按钮:

Response.Redirect(Request.Url.PathAndQuery, true);

或其变体。

【讨论】:

    【解决方案2】:

    这对我有用:

    <asp:Button ID="btnReset" runat="server" Text="Reset" 
    OnClientClick="this.form.reset();return false;" />
    

    【讨论】:

    • 为什么最后加了return false?
    • 为了防止点击按钮的默认动作,只运行他写的这部分代码
    • 这应该被接受为正确答案。
    【解决方案3】:
    <input type="reset" value="Clear" />
    

    【讨论】:

    • 我很惊讶这个答案还没有给出。更详细一点会更有用;说明 ASP.NET 表单实际上只是一个 HTML 表单,因此将该控件放在 &lt;form&gt; 元素中将照常工作。
    • 在我看来是这里建议的最优雅的解决方案。
    【解决方案4】:

    使用 javascript 你可以做到:

    document.forms[0].reset();
    

    theForm.reset();  // at least with ASP.NET 2.0
    

    <input type='button' id='resetButton' value='Reset' onclick='theForm.reset();return false;' //>
    

    【讨论】:

      【解决方案5】:

      这里列出了一些解决方案:

      Clear a form in ASP.Net

      我在 ASP.Net 中寻找相同的解决方案来清除我的点击表单,然后我登陆了这篇文章。我看了所有的cmets和回复。我决定使用普通的旧输入标签并创建一个 HTML 重置按钮。它就像一个魅力,没有回发,不是 javascripts。如果有任何问题,我找不到它......

      【讨论】:

        【解决方案6】:

        这应该可行:

        function resetForm() 
        { 
           var inputs = document.getElementsByTagName('input'); 
           for(var i=0;i<inputs.length;i++) 
           { 
               if(input[i].type == 'text')
                  input[i].value = "";
           }
        }
        

        【讨论】:

          【解决方案7】:

          在提交时清除表单中所有控件的最简单方法是:

          form1.Controls.Clear()
          

          【讨论】:

          • form.controls.clear() 将从表单中删除所有控件,重置表单是清除控件的值
          猜你喜欢
          • 1970-01-01
          • 2011-04-10
          • 1970-01-01
          • 2015-08-27
          • 1970-01-01
          • 1970-01-01
          • 2013-11-16
          • 2022-01-15
          • 1970-01-01
          相关资源
          最近更新 更多