hx-select
hx-select 是 HTMX 的一个属性,用于从服务器响应中选择部分内容进行交换(swap)。 它常用于服务器返回的是一个大页面,但你只想从中提取一部分 DOM 元素来更新前端。
语法
<button hx-get="/some-url" hx-select="#main-content" hx-target="#container">
加载内容
</button>
示例
HTML 页面
<div id="container">旧内容</div>
<button
hx-get="/partial-page"
hx-select="#new-section"
hx-target="#container">
加载新内容
</button>
/partial-page 返回内容如下:
<html>
<body>
<h1>不需要</h1>
<div id="new-section">这是我想要的部分</div>
<footer>也不需要</footer>
</body>
</html>
最终的页面效果:
<div id="new-section">这是我想要的部分</div>
<button
hx-get="/partial-page"
hx-select="#new-section"
hx-target="#container">
加载新内容
</button>
hx-select 与 hx-swap-oob 不同的是,hx-swap-oob 可以同时交换多处内容,hx-select 是从返回的结果中截取指定内容。