参数
默认情况下,触发请求的元素将包含其值(如果有)。如果元素是表单,它将包含其中所有输入的值。
与 HTML 表单一样,input 的 name 属性作为 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 属性(动态计算的逗号分隔的名称-表达式对)在请求中包含额外的值。