1.用简单的方式操作table,现在有一个普通的table,比如要编辑某一行数据
1.1获取选中的row
1.2遍历row的cell
1.3将得到的数据赋值给弹出框
1.4保存,上传给服务器
1.5服务器响应完成,重新给row的cell赋值
这个是比较传统的方式,在1.2这一步比较麻烦,因为每获取一个值就需要首先得到一个cell,显得非常臃肿,它可能是这样的
var obj={};
obj.p1=dom1.value;
obj.p2=dom2.value;
obj.p3=dom3.value;
obj.p4=dom4.value;
obj.p5=dom5.value;
而且获取table 内的dom也并不是一件欢快的事,太无聊了,现在我们使用一个比较容易的方法来获取数据
2.用另一个方法来操作table
2.1声明一个数组,如objList
2.2将数据push进去
2.3给每一行row添加一个id
当我们需要编辑的时候
2.4获取选择的row的id
2.5根据id在objList中找到这个对象
2.6将数据赋值给弹出框
2.7保存,上传给服务器
2.8服务器响应完成,重新给row赋值
2.9更新objList
获取数据的代码长这个样子
var id=dom.id;
var obj=objList.select("id",id);
我在这里给数组的原型写了一个select方法,具体代码在上一篇博客中
更新数组的代码长这个样子
var obj=返回的结果;
var index=objList.getIndex("id",obj.id)
objList.splice(index,1,obj);
getIndex方法同上
各位看官到这里应该明白我的意思了,获取dom元素的值是件麻烦事,尤其是当数据非常多的时候,需要一个一个读取,异常恶心,于是我就搞了一个堆放数据的Model,并用id和dom元素进行关联,仅此而已,各位大大不要吐槽我,我是菜鸟