如果我有一块#raw里面有javascript,有时候我需要从那个javascript访问一些python变量(例如$ foo)。
#raw
<script type="text/javascript" charset="utf-8" >
if (
#end raw
$foo
#raw
and $('#manuf').val() ) {
getNextFreeProdCode(
$('#category option:selected').val(),
$('#subCat option:selected').val(),
$('#manuf option:selected').val()
);
}
</script>
#end raw
首先,这看起来很丑陋且代码不那么易读。我希望if运算符在单行中。
但是有:
或者某种方式告诉#raw该块是什么并给予 那些变量作为参数?像:
#raw($foo, $bar)
.
if ( $(#manuf).val() or $foo ) {
fooBar($bar);
.
.
.
}
#end raw
就像在#def中一样,define块允许像函数调用这样的参数。
实际上我想更多的第二种方式,也许它不应该被称为#raw,但它可能是原始内容特定的,如#ecmascript()... #end ecmascript?
也许已经有了解决方案?
的Juha
答案 0 :(得分:1)
嗯,它是原始的还是非原始的,即解析。如果你想在一个块里面解析变量,那么块就不能是原始的。你必须在解析的块内转义美元符号。