Ben*_*kes 6 html html-select htmx
我正在使用HTMX,并且希望有一个<select>表单字段可以自动将特定 URL 加载到<div>.
“值选择”示例与此想法类似,但它包含值作为查询参数,例如/models?make=audi。我想为每个都使用一个特定的 URL <option>。
这是我认为应该有效的近似值。
<select name="make" hx-target="#models">
<option hx-get="/models/audi">Audi</option>
<option hx-get="/models/toyota">Toyota</option>
<option hx-get="/models/bmw">BMW</option>
</select>
<div id="models">
<!-- hx-get results would go here -->
</div>
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用,我无法找到实现我所描述内容的方法。我怎样才能实现预期的行为?
编辑: 相关 Twitter 线程
Ben*_*kes 14
我在 Twitter 上进行了一次对话,得出的结论是,这还不存在。
我最终使用了htmx:configRequest,产生了这个可重用的 JavaScript,这对于回馈 HTMX 库可能是有意义的。
document.body.addEventListener("htmx:configRequest", function (event) {
let pathWithParameters = event.detail.path.replace(/:([A-Za-z0-9_]+)/g, function (_match, parameterName) {
let parameterValue = event.detail.parameters[parameterName]
delete event.detail.parameters[parameterName]
return parameterValue
})
event.detail.path = pathWithParameters
})
Run Code Online (Sandbox Code Playgroud)
这是如何使用它的示例:
<select name="make" hx-get="/models/:make" hx-target="#models">
<option name="audi">Audi</option>
<option name="toyota">Toyota</option>
<option name="bmw">BMW</option>
</select>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3726 次 |
| 最近记录: |