我有一個由小鬍子模板(以及javascript和jquery)驅動的頁面,我無法弄清楚如何將函數插入到此模板中。基本上我想要的是當用戶點擊它時,在執行功能的頁面上添加一個鏈接或按鈕「onTaskSelected(taskId)
」。我一直在尋找一種方法來實現這一點,現在已經有好幾天了,而且大量的鬍鬚文檔/支持/示例很難找到。有誰知道這可以做到嗎?在小鬍子模板中的點擊事件中執行函數
編輯 - 下面是一些代碼,我試過:
data["B" + task.taskId] = {
changeTask : function(taskId) {
var self = this;
self.onTaskSelected(taskId);
},
taskId : task.taskId
};
數據被加載到鬍子模板,在其內具有如下:
<button onClick="{{#B8.changeTask}}B8.taskId{{/B8.changeTask}}">Change to task 8</button>
我已經將代碼調試到將數據發送到要轉換爲html的模板的位置,並且B8已正確設置changeTask和taskId。然而,在顯示HTML時,該按鈕看起來是這樣的:
<button onclick>Change to task 8</button>
爲什麼得到的onclick手段傳給了,我怎麼能解決這個問題?它不需要是一個按鈕,但我確實需要使用該文本的頁面上的可點擊元素。
更新:因爲我已經更新了我的模板如下:
<button onClick="{{#B8}}{{#changeTask}}8{{/changeTask}}{{/B8}}">Change to task 8</button>
顯然,我需要我的窩模板數據,以訪問「B8
」對象中的變量。但是,現在我遇到的問題是,它試圖在從模板創建html時執行「changeTask
」函數。我怎樣才能讓它等待執行,直到我點擊按鈕?
是啊,我不知道這種形式在我寫我的上述回答的時間選擇,但我會更新它,謝謝。如果你面臨與OP相同的問題,我認爲你最好走出我在答案中發佈的路線,很可能。 – Axle