2012-07-22 67 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。

相关问题