You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ASP.NET回发(PostBack)后重置Web表单内容?

商品评论表单重置方案确认与优化

你的实现思路没问题,但存在语法错误,同时可以进一步简化逻辑:

现有代码的问题

  • 选择器 input[type"text"] 缺少等号,正确写法应为 input[type="text"],否则无法匹配文本输入框
  • 手动遍历元素重置的方式可以简化,利用原生表单的重置功能更高效可靠

优化后的代码

如果你的表单有可被jQuery选中的标识(比如添加id="commentForm"),可以直接调用原生重置方法:

Sad.Ajax.Post({
    "handler": "Comment",
    "data": formItems,
    "ok": function (result) {
        if (!result.Ok) {
            Sad.Modal.Alerts.Error(result.Msg);
        } else {
            Sad.Modal.Alerts.Success(result.Msg);
            // 调用原生reset方法,将表单元素恢复到页面加载时的初始状态
            $("#commentForm")[0].reset();
            // 若下拉框需要固定默认值为"0"而非初始值,可单独补充:
            // $("#commentForm select").val("0");
        }
    }
});

如果无法直接选中表单元素,也可以修正原有遍历逻辑的语法错误后继续使用:

container.find('input[type="text"], select, textarea').each(function () {
    var o = $(this);
    o.is("select") ? o.val("0") : o.val("");
});

补充说明

  • 原生reset()方法会自动将所有表单元素恢复到页面初始化时的状态,无需手动逐个处理,逻辑更简洁
  • 若部分元素需要特殊重置规则(如下拉框固定默认值),可以在调用reset()后单独调整对应元素的值

内容的提问来源于stack exchange,提问作者Beren

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 18:35:41