jQuery-Seat-Chart重新映射现有席位

时间:2015-07-28 05:09:37

标签: jquery jquery-plugins

我正在使用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的更新无效,座位图对于首次点击的项目(我的意思是第一个初始化的座位图)保持不变。关于如何重新初始化的任何想法?

2 个答案:

答案 0 :(得分:1)

我必须删除插件的所有数据并重新重新初始化。一些jquery插件附加了一个data属性,其中包含需要删除的元素以及seat和其他ui对象。然后再次拨打$json = "..."; $data = json_decode($json); var_dump($data);

这是清除现有座位并删除附加的seatChart对象的方法:

$('#id').seatCharts({ ... })

答案 1 :(得分:0)

为什么不把它放在一个函数中?把它分开。你知道如何覆盖每个座位的ID和标签吗?