我正在做一个使用sinatra与haml作为模板的项目。我希望能够使用JQuery附加一些我的haml部分。我希望将此添加到由如下事件触发的js函数中
....addEventListener(myWidget, 'click', function() {
$('targetDiv').append(RenderHamlTempalte('/my/file/location/');
});或
....addEventListener(myWidget, 'click', function() {
$('targetDiv').append(RenderHamlTempalte('/my/file/location/', {options: here, options: here);
});我已经在github上查看了一些相关的项目,但真的找不到合适的东西来做这件事。
感谢您提供的信息
更新:
这就是我最终要做的
var url = '/update&my&div/' + param;
$('.my-div').load(url);然后在我的sinatra app.rb中,我可以返回我的haml partial
get ''/update&my&div/:params' do
# do some stuff
@make_variables_happen
haml :my_partial
end发布于 2011-11-18 11:48:11
要做到这一点,一种方法是使用像这样的工具:https://github.com/uglyog/clientside-haml-js你必须用<script type="text/haml-template" id="template_id"> YOUR PARTIAL GOES HERE </script>包装你的部分参数,并将它们附加到你的html页面中的某个地方(我通常将它们添加到页面的底部)。然后,您可以使用以下命令从JavaScript引用它们:
var tmpl = haml.compileHaml('template_id');然后,您可以使用以下命令传递数据:
var html = tmpl({option1: value1, option1: value1});或者基于你的例子:
$('targetDiv').append(tmpl({option1: value1, option1: value1}));https://stackoverflow.com/questions/8176155
复制相似问题