我玩弄智者和jQuery ...通過點擊複選框
其實我有一點啤酒項目,我想提高我的源更好HANDELING啓動一個智者的功能。
現在我所擁有的是帶有一些內容的HTML頁面(.tpl
)。在一個行我有一個複選框,如:
<input type="checkbox" aria-label="..." checked>
<button onclick='fnTest({$options})'>test</button>
而且因爲我要調用一個js功能,並通過JSON傳遞一些數據我有一個排在這個頁面看起來像:
{$options = '{"preview":1, "extra_paper":0}'}
實際上只是創建一個包含JSON字符串的Smarty變量。
在我的jsFile上只是簡單地使用console.log()
(現在)來看看結果是什麼。
function fnTest(obj){
console.log(obj);
}
每次都很好,直到這裏。現在,我想在選中/取消選中複選框後立即更改JSON字符串中的一些內容。
經過:
{$options = '{"preview":1, "extra_paper":1}'}
未選中
{$options = '{"preview":1, "extra_paper":0}'}
我試圖用Smarty的,功能
{function name=presets}
//some source to write the JSON-String new
{$data}
{/function}
被稱爲像
{presets data="checkstatus"}
但這裏的問題是,我不知道如何啓動一個複選框動作此功能...
五月有一個其他的方式來做到這一點什麼即時試圖做...
所以主要的問題是:
是否有可能激發一個Smarty函數複選框事件?
有沒有什麼辦法在模板上重新創建JSON字符串並將其傳遞給函數?
Thx for this hint。其實我不需要學習這個。就像我說這是一個大項目,99%沒有onClick。元素有類,它們被綁定到clickevents。但在某些情況下(非常少見)需要這種類型的代碼,否則處理一件簡單的事情將會花費很多工作量。而且比其他一些客戶可能遇到一些問題:)注入代碼實際上並不是我想要的。我會使用[sessionstorage](https://code.google.com/p/sessionstorage/) – Dwza