hx-include
hx-include
μμ±μ AJAX μμ²μ μΆκ° μμ κ°μ ν¬ν¨ν μ μκ² ν©λλ€. μ΄ μμ±μ κ°μ λ€μκ³Ό κ°μ΅λλ€:
this
λ μμμ μμμ ν¬ν¨ν©λλ€.closest <CSS selector>
λ μ£Όμ΄μ§ CSS μ νμμ μΌμΉνλ κ°μ₯ κ°κΉμ΄ μμ μμλ μκΈ° μμ μ μ°Ύμ΅λλ€
(μ: closest tr
μ μμμ κ°μ₯ κ°κΉμ΄ ν
μ΄λΈ νμ λμμΌλ‘ ν©λλ€).find <CSS selector>
λ μ£Όμ΄μ§ CSS μ νμμ μΌμΉνλ 첫 λ²μ§Έ νμ μμ μμλ₯Ό μ°Ύμ΅λλ€.next <CSS selector>
λ μ£Όμ΄μ§ CSS μ νμμ μΌμΉνλ 첫 λ²μ§Έ μμλ₯Ό μ°Ύμ DOMμ μμΌλ‘ μ€μΊν©λλ€
(μ: next .error
λ error
ν΄λμ€λ₯Ό κ°μ§ κ°μ₯ κ°κΉμ΄ λ€μ νμ μμλ₯Ό λμμΌλ‘ ν©λλ€).previous <CSS selector>
λ μ£Όμ΄μ§ CSS μ νμμ μΌμΉνλ 첫 λ²μ§Έ μμλ₯Ό μ°Ύμ DOMμ λ€λ‘ μ€μΊν©λλ€
(μ: previous .error
λ error
ν΄λμ€λ₯Ό κ°μ§ κ°μ₯ κ°κΉμ΄ μ΄μ νμ μμλ₯Ό λμμΌλ‘ ν©λλ€).λ€μμ λ³λμ μ λ ₯ κ°μ ν¬ν¨νλ μμ μ λλ€:
<div>
<button hx-post="/register" hx-include="[name='email']">
Register!
</button>
Enter email: <input name="email" type="email"/>
</div>
μ΄ μμ λ μΌλ°μ μΌλ‘ λ μμλ₯Ό form
μ ν¬ν¨νμ¬ μλμΌλ‘ κ°μ μ μΆνλ κ²½μ°κ° λ§μ§λ§, κ°λ
μ μ€λͺ
νκΈ° μν΄ μ¬μ©λμμ΅λλ€.
λΉμ λ ₯ μμλ₯Ό ν¬ν¨νλ κ²½μ°, ν΄λΉ μμμ ν¬ν¨λ λͺ¨λ μ λ ₯ μμκ° ν¬ν¨λλ€λ μ μ μ μνμμμ€.
hx-include
λ μμλλ©° λΆλͺ¨ μμμ λ°°μΉν μ μμ΅λλ€.hx-include
λ μμλμ§λ§, μμ²μ νΈλ¦¬κ±°νλ μμμμ νκ°λ©λλ€. find
μ closest
κ°μ νμ₯ μ νμλ₯Ό μ¬μ©ν λ νΌλνκΈ° μ½μ΅λλ€.<div hx-include="find input">
<button hx-post="/register">
Register!
</button>
Enter email: <input name="email" type="email"/>
</div>
μ μμ μμ λ²νΌμ ν΄λ¦νλ©΄, find input
μ νμλ button μ체μμ ν΄κ²°λ©λλ€. μ¬κΈ°μ buttonμ input
μμμ ν¬ν¨νμ§ μμΌλ―λ‘ μμλ₯Ό λ°ννμ§ μμΌλ©°, λ°λΌμ μ€λ₯λ₯Ό λ°μμν΅λλ€.find
λλ next
μ κ°μ νμ₯ μ νμλ μ΅λ ν κ°μ μμλ§ λ°ννμ¬ ν¬ν¨λ©λλ€.