我在EJS模板上执行jQuery代码时遇到问题。我的代码:
$.json('/data.json', function (data) {
new EJS({url: 'template.ejs'}).update('mycontainer', {data: data});
})
有效。但是当我试图在这个模板上使用一些jQuery插件时 - 没有。我的EJS模板示例:
<script>
alert(0);
$(document).ready(function () {
$('#someId').someJQplaugin();
})
</script>
<div id="someId"><%= data.someValue%></div>
插件和警报(!!)无效。然后我在<% %>
标签之间替换我的代码。 Alert和document.ready正在运行,但是jQuery无法在附加的EJS模板中找到该对象。
我试图从模板中使用jQuery,但结果是一样的:
$('#someId')
为空。
如何一起使用EJS和jQuery?
答案 0 :(得分:0)
EJS.Prototype = {
...
update: function(element, options, cb) {
...
// add this to the end of function
if(cb != null)
cb();
}
现在我可以像这样执行回调:
new EJS({url: template}).update(obj.attr('data-selector'), {data: data}, function () {
// it works
$('#someId').someJQplugin();
});
希望,这会有所帮助)