我想在創建select2時傳遞自定義屬性。示例(我自定義屬性爲myFilterEnabled
):select2:是否可以傳遞自定義輸入並在方法中訪問
$('#mySelId2').select2({
myFilterEnabled: false, //Pass my initial state
query: function(query) {
var res = {
results: CityFilter.cities
};
query.callback(res);
}
});
並使用它在查詢或呈現功能。像:
$('#mySelId2').select2({
myFilterEnabled: false,
query: function(query) {
var fltEnabled = this.myFilterEnabled; //Read current state
var res = {
results: fltEnabled ? [] : CityFilter.cities
};
query.callback(res);
}
});
這是這樣的,有一個變量的初始狀態。但是,它可以在外部進行更改,並且我希望在每次重新呈現/查詢期間檢查該狀態。
編輯:似乎我發佈之前犯了一個錯誤。上面的代碼似乎工作。我打算添加一個像'my'或'myProj'這樣的通用前綴,以便它不會與select2本身的任何變量衝突。
編輯2:如前所述,傳遞初始狀態和讀取當前狀態正在工作。我仍然需要從外部改變這種狀態的方法。如果select2沒有可以在元素上設置數據屬性的方法。
爲什麼不設置元素它自己的數據屬性,並使用('$(元素)。數據(「myFilterEnabled」,「一些價值」)'和'獲得$(元素) .data('myFilterEnabled')') –
圖書館如何接受您的自定義屬性? – Sankar
@maximusツ謝謝。我會嘗試的。 – Teddy