如何在没有语法错误的情况下设置onclick-var?
{% if active is defined and active == false %}
{% set onclick = 'javascript:void(0); false;' %}
{% else %}
{% set onclick = "myApp.dialog.show({
'title': '{{ 'app.title'|trans({}, 'MyBundle') }}',
'width': '{{ dialog.width }}',
'height': '{{ dialog.height }}'
});"
%}
{% endif %}
<button onclick="{{ onclick }}" type="button" class="btn btn-default" aria-label="Left Align">
感谢您的帮助。
答案 0 :(得分:0)
根据documentation over here,您可以使用set
标记来捕获数据:
{% if active is defined and active == false %}
{% set onclick = 'javascript:void(0); false;' %}
{% else %}
{% set onclick %}
myApp.dialog.show({
'title': '{{ 'app.title'|trans({}, 'MyBundle') }}',
'width': '{{ dialog.width }}',
'height': '{{ dialog.height }}'
});
{% endset %}
{% endif %}
答案 1 :(得分:0)
我建议你制作一个宏,将视图中的实现抽象为一个单独的文件:
api/Foo/Operation?
SelectedRanges[0].Min=0&
SelectedRanges[0].Max=10&
SelectedRanges[1].Min=100&
SelectedRanges[1].Max=200&
SelectedTypes=1&
SelectedTypes=2
会:
{% macro clickHandler(active) %}
{% if active is defined and active == false %}
javascript:void(0); false;
{% else %}
myApp.dialog.show({
'title': '{{ 'app.title'|trans({}, 'MyBundle') }}',
'width': '{{ dialog.width }}',
'height': '{{ dialog.height }}'
});
{% endif %}
{% endmacro %}