2012-06-27 44 views
8

我有JSON是這樣的:鬍鬚裏面的HREF

{ "something": "http://something.com" } 

和HTML這樣的:

<a href="{{something}}">{{something}}</a> 

當我申請鬍子,我得到

<a href="%7B%7Bsomething%7D%7D">http://something.com</a> 

但我是什麼試圖得到是

<a href="http://something.com">http://something.com</a> 

我已經試過{{{ something}}},{{& something}},單引號,雙引號......我甚至讀過文檔。

你能幫我嗎?

+0

爲了防止「://」 – Evgeny

回答

4

確保您的模板源代碼是直接文本 - 請不要試圖將解析的HTML源文件作爲您的模板。瀏覽器將urlencode /轉義您的鏈接href中的這些字符,並導致您在代碼中看到的%7Bs%7Ds。小鬍子不會意識到這一點。

但是,我想盡量避免傳遞給鬍子的源代碼。

Mustache.render(unescape(source),view) 
+0

謝謝!實際上幫助避難。 原來我使用jQuery在模板中進行一些轉換,然後將它提供給Mustache(我基本上做了這樣的事情:$(「{{something}}」)),這就是爲什麼這段HTML會被轉義 – Evgeny

9

我認爲你需要利用&爲結合與模板腳本週圍模板逃避:

<script type="text/template" id="tmpl"> 
    <a href="{{& something }}">{{ something }}</a> 
</script> 

發現這個例子over here