2012-07-22 68 views
0

問題很簡單。我在HTML中有類似棋盤的東西。這些字段具有座標,存儲在ID屬性中(ROW | COLUMN) 單擊特定字段可使其標記/未標記。更重要的是,所選字段的行和列以ROW | COLUMN,ROW | COLUMN的形式存儲在<input type="hidden"/>中...在JavaScript中爲服務器端處理存儲數據

對於每次點擊,我必須處理輸入隱藏的值以檢查字段已存儲,添加新字段,刪除現有等等。這有點尷尬。 有沒有更好的方法?或者,也許這是最好的方式?:)

+0

是否有可能在每次點擊時都沒有這樣做。但只有當你將數據發送到服務器,並收集數據一次? – bingjie2680 2012-07-22 08:33:48

+0

那麼......也許我可以添加一個類到選定的字段。在發送表單到服務器之前,請檢查哪些字段具有此類。 – drv 2012-07-22 08:50:30

回答

0

你不必在輸入字段中存儲字段狀態。更好地使用全局JavaScript數組或在將它發送到服務器之前操縱DOM並將其狀態序列化。

這裏是一個的jsfiddle一些示例代碼:http://jsfiddle.net/U2D9Q/

的重要組成部分,是其中列

$td.bind("click", function(e) { 
    $(this).toggleClass("selected"); 
}); 

,以及如何當您單擊按鈕

var serialize_table = function() { 
    var output = new Array(); 

    $("table tbody").children().each(function(y) { 
     var row = new Array(); 

     $(this).children().each(function(x) { 
      row[x] = $(this).get(0).className; 
     }); 

     output[y] = row; 
    }); 

    return output; 
} 
它的序列化的類名

我用jQuery保持代碼清潔。隨意使用你喜歡的任何JS框架或者編寫本地JS。

相關問題