处理把手上的jQuery onClick事件
我想设置一个简单的jQuery onClick事件,以使UI在车把模板上动态化。 在特定点击后我想知道addClass()。
考虑HTML(由把手生成)
{{#if hasButton}} {{/if}}
即:在按钮内单击后,其容器将接收一个加载类,该类将使用CSS创建交互。
$(".myButton").on("click", function(event){ $(this).parent().addClass("loading"); });
这个代码应该放在我的把手模板上,还是应该把它重写成一个特定的助手呢? 有没有可以提供的例子,所以我可以研究它然后开发类似的东西?
提前致谢!
在将节点插入DOM HTML之后,您必须刷新Jquery侦听器。
var source = "{{label}} "; var template = Handlebars.compile(source); var context = {"uri":"http://example.com", "label":"my label"}; $("ul").append( template(context) ); // add your JQuery event listeners $("li").click(function(){ alert("success"); });
如果您在文档级别定义事件处理程序,则无需在每个动态DOM更新上重新附加事件处理程序:
$(document).on('click','li',function(){ alert( 'success' ); });
希望这可以帮助! 🙂
我不确定你的问题究竟是什么。 如果你将JavaScript保存在* .js文件中, perhaps
使用parent()而不是prev()
,这是正确的。