0
假設我有jQuery代碼,將外部html文件加載到模板。用鬍子填充外部.html文件?
$('#myButton').click(function(){
$('#content').load('file.html');
});
現在,我想填充file.html
文件中的一些字段。那可能嗎?
假設我有jQuery代碼,將外部html文件加載到模板。用鬍子填充外部.html文件?
$('#myButton').click(function(){
$('#content').load('file.html');
});
現在,我想填充file.html
文件中的一些字段。那可能嗎?
這是一個(未經測試的)如何做到這一點的例子。
$('#myButton').click(function() {
// load text into a hidden div.
$('#hiddenContent').load('file.html', function() {
// grab template from hidden div
var templateString = $('#hiddenContent').html();
// compile the template string into a template object
var compiledTemplate = hogan.compile(templateString);
// apply some data to the template
var parsedTemplate = compiledTemplate.render({...some data});
// finally, show the parsed template
$('#content').html(parsedTemplate);
}
});
編輯:附加註釋
理想情況下,你就不會加載file.html
到一個DOM元素,因爲它並不需要顯示。只需加載文本。
此外,編譯模板的計算量很大。在生產環境中,應該預編譯這些模板。 Hogan擁有一個名爲Hulk的命令行實用程序,它可以實現這一點。
也許這樣的事情?
$('#myButton').click(function() {
$('#content').load('file.html', function() {
// do something to populate fields created by the loading of file.html
}
});
是的,這是可能的。 – Celeo
請考慮在這裏包含'file.html'的內容(或者至少包含它可能包含的一個很好的代表性示例)。 –