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

如何使用Hyperscript实现表单提交时清空所有输入字段?

表单提交后清空字段的正确实现

你可以直接修改form标签的_属性为以下内容:

<form hx-post="/example" hx-target="#table tbody" hx-swap="beforeend"
      _="on htmx:success reset me">
  <!-- 原有表单内部内容保持不变 -->
</form>

原写法失效的原因

  • 时机错误:直接绑定submit事件时,清空操作会在htmx收集表单提交参数之前执行,最终会导致提交到后端的都是空值
  • 选择器范围问题:你写的<input/>选择器默认匹配全局所有input元素,而非当前表单内的输入框,同时手动修改input value的方式兼容性差,无法覆盖下拉框、单选框、复选框等其他表单控件的重置需求

可选的其他写法

如果你需要无论请求成功失败都清空表单,可以将事件改为htmx:afterRequest:

_="on htmx:afterRequest reset me"

如果你确实需要手动指定清空当前表单内所有文本输入框,写法如下:

_="on htmx:success put '' into <input[type='text']/> in me"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 09:09:05