如何 select Handlebars 中每个助手内的多个按钮中的特定按钮?
How to select specific button from multi buttons inside each helper in Handlebars?
{{#each posts}}
<input type="hidden" value="{{this.id}}" name="storeInput">
<input type="button" value="Save" name="store">
{{/each}}
如何使用 jQuery select 特定按钮?
如果在客户端有对postid的引用,可以根据this.id
生成一个id或者class
<input type="hidden" id="post-{{this.id}}" value="{{this.id}}" name="storeInput">
然后在 js 中
const buttonEl = $('#post-' + post.id);
你不需要 'post-' 但命名空间很好。
顺便说一句,我很肯定有更好的方法来做到这一点
在这里,这个事件侦听器将过滤按钮和查看上一个兄弟项。
document.addEventListener('click', (e) => {
if(e.target.matches('[type="button"]')) {
console.log(e.target.previousElementSibling.value);
}
});
<input type="hidden" value="1" name="storeInput">
<input type="button" value="Save" name="store">
<input type="hidden" value="2" name="storeInput">
<input type="button" value="Save" name="store">
<input type="hidden" value="3" name="storeInput">
<input type="button" value="Save" name="store">
<input type="hidden" value="4" name="storeInput">
<input type="button" value="Save" name="store">
{{#each posts}}
<input type="hidden" value="{{this.id}}" name="storeInput">
<input type="button" value="Save" name="store">
{{/each}}
如何使用 jQuery select 特定按钮?
如果在客户端有对postid的引用,可以根据this.id
生成一个id或者class<input type="hidden" id="post-{{this.id}}" value="{{this.id}}" name="storeInput">
然后在 js 中
const buttonEl = $('#post-' + post.id);
你不需要 'post-' 但命名空间很好。
顺便说一句,我很肯定有更好的方法来做到这一点
在这里,这个事件侦听器将过滤按钮和查看上一个兄弟项。
document.addEventListener('click', (e) => {
if(e.target.matches('[type="button"]')) {
console.log(e.target.previousElementSibling.value);
}
});
<input type="hidden" value="1" name="storeInput">
<input type="button" value="Save" name="store">
<input type="hidden" value="2" name="storeInput">
<input type="button" value="Save" name="store">
<input type="hidden" value="3" name="storeInput">
<input type="button" value="Save" name="store">
<input type="hidden" value="4" name="storeInput">
<input type="button" value="Save" name="store">