2008-11-22 29 views
0

我加載使用JQuery - 在.load-ed html中替換另一個字符串?

$("#TemplateDump").load("Themes/default.template", function() { processTemplate() }) 

我加載包含

<div> 
`hello ##name##, your age is ##age##. 
your page is <a href="##website##">here</a> 
</div> 

我需要 「喬」,以取代##佔位符, 「112」 和「WWW的HTML的HTML片段。 whatever.com」。有沒有更像jquery這樣做而不是直接使用javascript .replace?有沒有更換插件的地方?使用.replace在IE瀏覽器的URL佔位符只是不工作。不知道爲什麼。順便說一句,模板不能改變。

回答

1

做香草簡單的模板系統JavaScript並不是太難。

var myValues = { 
    name : 'Joe', 
    age : '112', 
    website: 'http://www.whatever.com' 
}; 
var myString = "hello ##name## ..."; // etc 

for (var key in myValues) { 
    myString.replace(new RegExp("##" + key + "##", g), myValues[key]); 
} 

只要確保在HTML插入到文檔中之前在HTML上運行此腳本。您可能想要使用除load()之外的其他AJAX功能,也許是get()

$.get(
    'themes/default.template', 
    {}, 
    function (data) { 
     data = processTemplate(data); 
     $('#templateDump').html(data); 
    } 
); 
相關問題