2012-02-11 10 views
1

現在、makoファイルにJavascriptを書いています.1行に2つの文字列が等しいかどうかを確認する必要があります。私がチェックしている文字列には "<%text"という文字が含まれているので、textという名前のタグがないというエラーが表示されていました。私は "< %% text"を得るために2番目の%を追加することでそれを逃しました。しかし、今、私は次のエラーを取得しています。Makoのエラー: "expected%>"、エスケープ%

SyntaxException: Expected: %> in file file.mako 

何が問題ですか?

+1

は、あなたが問題を作成するだけの十分なコンテンツを持っているテンプレートの簡易版を置くことができますおそらくあなたは、パーセント記号のUnicodeエンティティを使用することができますか? – BenTrofatter

答えて

0

"<%"と "%>"はMakoの予約シンボルです。それらがあなたのテンプレートに現れた場合、MakoはあなたがPythonコードブロックをエスケープすることを意味すると想定します。

""" 
<% 
    some_var = 'foo' 
    other_var = '{0} bar'.format(some_var) 
%> 
""" 

スタックオーバーフローWYSIWYGで詳細

言い訳引用符、「<%」と「%>」も予約されているシンボルのhttp://docs.makotemplates.org/en/latest/syntax.html#python-blocksを見てみましょう:ここで私が何を意味するかの例があります編集者。

比較するJavascript変数に予約シンボルが含まれている場合は、それらを比較する別の方法を見つける必要があります。例えば

if ('<%' == '<\u0025') { 
    alert('success!'); 
} 
関連する問題