内容
参数
默认情况下,引发请求的元素将包含其值(如果有)。如果元素是表单,它将包含其中所有输入的值。
与 HTML 表单一样,nameinput 的属性作为 htmx 发送的请求中的参数名称。
此外,如果元素导致非GET请求,则将包括最近封闭表单的所有输入的值。
如果你希望包含其他元素的值,则可以将hx-include属性与 CSS 选择器结合使用,选择你想要在请求中包含其值的所有元素。
如果你希望过滤掉一些参数,你可以使用hx-params属性。
最后,如果你想以编程方式修改参数,你可以使用htmx:configRequest 事件。
文件上传
如果你希望通过 htmx 请求上传文件,可以将hx-encoding属性设置为 multipart/form-data。这将使用一个FormData对象来提交请求,并将文件正确地包含在请求中。
请注意,根据你的服务器端技术,你可能必须以非常不同的方式处理具有此类正文内容的请求。
请注意,htmx 会htmx:xhr:progress根据progress上传过程中的标准事件定期触发事件,你可以挂接该事件来显示上传的进度。
请参阅示例部分以了解更多高级表单模式,包括进度条和错误处理。
额外值
你可以使用hx-vals(JSON 格式的名称-表达式对)和 hx-vars属性(动态计算的逗号分隔的名称-表达式对)在请求中包含额外的值。