2012-09-03 118 views
0

我想在JQM站點有兩個滑塊互相影響。兩個jQuery Mobile滑塊一起工作

滑塊1將改變月 數量滑塊2將改變成本

在幕後,會有一個量,比如$ 3600

默認情況下,月滑塊的數量將是36因此成本滑塊將是$ 10

如果用戶改變了個滑塊18中,成本滑塊應自動改變爲$ 20(因爲20 * 18 =£3600)

同樣地,如果用戶陳將成本滑塊縮減至20美元,月份滑塊應移至18個月。

我向兩個滑塊添加了一個綁定(「onchange」),但最終出現「Maximum callsize stack exceeded」錯誤。

我已經嘗試使用event.originalEvent和event.preventDefault,但無濟於事。

我該如何去讓這兩個相互合作,以便如果1更新,另一個也重新計算,反之亦然?

感謝

+0

如果你將'change'事件處理程序綁定到兩個元素上,你將會得到一個無限循環,因爲每個事件處理程序都會改變另一個輸入的值......一個輸入改變另一個輸入,那個事件處理程序運行(改變第一個輸入)觸發第一個輸入事件處理程序等 – Jasper

+0

嗨Jesper,是的,我收集這就是原因 - 有沒有辦法繞過這個呢? – Graeme

回答

0

刷新似乎是調用刷新之前觸發change事件所以現在我死了()事件的事情,然後重新創建它

$("#Months").val(42); 
// remove binding 
$("#Months").die("change"); 
$("#Months").slider("refresh"); 
$("#Months").live("change", ChangeMonths); 

似乎工作,也許不是漂亮,但很好哦