我正在使用jquery-seat-charts(https://github.com/mateuszmarkowski/jQuery-Seat-Charts)来显示座位图(对于给定的大厅,公共汽车,火车等)。问题是我的座位布局随着时间的推移而变化,我正在处理它:
$(document).on('click', '.some-item', function(e){
e.preventDefault();
var obj = jQuery.parseJSON( jsonForThisElement );
var seatMap = [];
for (var i = 0 ; i < obj.someAttr.Rows ; i++){
var row = '' ;
for (var j = 0 ; j < obj.someAttr.Cols ; j++){
row += 'f';
}
seatMap.push(row);
}
var sc = $('#seat-map').seatCharts({
map: seatMap,
seats: someSeatStyleObject, //doesn't matter
naming : someNamingObject , //doesn't matter
... other initializations
});
到目前为止,seatMap的更新无效,座位图对于首次点击的项目(我的意思是第一个初始化的座位图)保持不变。关于如何重新初始化的任何想法?
答案 0 :(得分:1)
我必须删除插件的所有数据并重新重新初始化。一些jquery插件附加了一个data属性,其中包含需要删除的元素以及seat和其他ui对象。然后再次拨打$json = "...";
$data = json_decode($json);
var_dump($data);
。
这是清除现有座位并删除附加的seatChart对象的方法:
$('#id').seatCharts({ ... })
答案 1 :(得分:0)
为什么不把它放在一个函数中?把它分开。你知道如何覆盖每个座位的ID和标签吗?