function Table2JsonBuilder(_tblId){
var _tbl = document.getElementById(_tblId);
if(!_tbl){
return;
}
this.table = document.getElementById(_tblId);
this.tableHeader = new Array();
this.json = {};
}
Table2JsonBuilder.prototype.extend = function(_destination,_source){
for (var p in _source) {
_destination[p] = _source[p];
}
return _destination;
}
var Element = new Object();
Element.Methods = {
findNodes : function(_tagName){
var _clds = this.childNodes;
if(!_clds)
return null;
var clds = new Array();
for(var i=0,j=_clds.length; i<j; i++){
var node = _clds[i];
if(!node)
continue;
if(!node.tagName)
continue;
if(node.tagName.toLowerCase() != _tagName.toLowerCase()){
continue;
}
clds.push(node);
}
return (clds.length == 0)? null: clds;
}
}
Table2JsonBuilder.prototype.build = function(){
this.table = this.extend(this.table,Element.Methods);
var _theads = this.table.findNodes("thead");
if(_theads == null || _theads.length == 0){
alert("错误:该表格为非标准格式[table无thead元素]!");
return;
}
var _thead = _theads[_theads.length - 1];
if(!_thead.childNodes){
alert("错误:该表格为非标准格式[thead无任何子元素]!");
return;
}
var _tr = _thead.childNodes[_thead.childNodes.length - 1];
_tr = this.extend(_tr,Element.Methods);
var _ths = _tr.findNodes("th");
if(_ths == null || _ths.length == 0){
alert("错误:该表格为非标准格式[thead无th元素]!");
return;
}
this.tableHeader = _ths;
var _tbodys = this.table.findNodes("tbody");
if(_tbodys == null || _tbodys.length == 0){
return;
}
for(var i=0,j=_tbodys.length; i<j; i++){
var _tbody = _tbodys[i];
var _trs = _tbody.childNodes;
for(var m=0,n=_trs.length; m<n; m++){
var _tr = _trs[m];
var _tds = _tr.childNodes;
var els = {};
for(var o=0,p=_tds.length; o<p; o++){
var td = _tds[o];
var a = _ths[m].innerHTML;
els.a = td.innerHTML;
}
this.json.tr = els;
}
}
}
window.onload = function(){
var builder = new Table2JsonBuilder("marksTbl");
builder.build();
}
分享到:
相关推荐
在描述中提到的"Table2JSONTree_C#根据TABLE产生JSON树_jsontree2table_"是一个关于将数据库中的表格数据转换为JavaScript Object Notation (JSON)树形结构的过程。这种转换在前端开发中非常常见,特别是在需要在...
6. **注意事项**: 在实际应用中,要确保表格结构清晰,没有嵌套表格或不规则的布局,因为这可能导致`tabletojson`无法正确解析。同时,确保所有表头都有文本内容,因为它们将作为JSON对象的键。 7. **与其他库的...
JSON解析 JSON转为TABLE Table转化为JSON
life-expectancy-table.json
本主题主要关注如何在Bootstrap Table中动态加载JSON数据并实现分页功能。 首先,我们需要理解Bootstrap Table的基本结构。一个基本的Bootstrap Table可以通过以下HTML代码创建: ```html <table id="table" data-...
2. JSON没有内建的true/false值,它们在Lua中对应于boolean类型的true/false。 3. JSON的null值在Lua中通常转换为nil。 使用这个脚本,开发者可以将JSON格式的配置文件或网络请求响应转换为可以直接在Lua环境中使用...
在浏览器环境中,可以使用`<script>`标签直接引入`dist/tabletojson.min.js`或`src/tabletojson.js`。如果是Node.js环境,可以通过npm安装`tabletojson`包,然后在项目中导入。 使用`tabletojson`库非常简单。假设...
2. 序列化对象为JSON:将对象或数组转换为JSON字符串。 3. 验证JSON格式:检查JSON数据是否符合特定的JSON Schema。 4. 深度复制:创建JSON对象的副本,避免对原始数据的修改影响到其他地方。 5. 转换嵌套结构:处理...
将数据库的Table表转换成JSON格式的字符串是数据处理与传输中的常见需求,尤其是在Web开发领域,这种转换有助于实现前后端的数据交互,因为JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人...
标题中的"ZUI2_JSON2_/UI2/CL_JSON_ui2/cl_json_abap_Ui2_cl_json_zui2_json_源"可能指的是一个与ZUI2相关的项目,它利用了ABAP类/UI2/CL_JSON来解析和生成JSON数据。描述中提到,我们需要用到这个类来将JSON格式的...
2. **基本使用**:在JavaScript中,你可以创建一个JSON对象,然后调用库的`convertToJsonTable`函数,传入JSON数据作为参数。这个函数会返回一个HTML字符串,可以直接插入到页面的某个元素中,如`document....
grouped_table.json
2. 在`success`回调中接收JSON数据。 3. 遍历JSON数组,为每个对象创建新的表格行。 4. 对于每个对象的属性,创建一个表格单元格并插入相应的值。 5. 将创建的行添加到表格的`<tbody>`中。 在实际开发中,还需要...
3. 转换为JSON:将提取的数据结构化为JSON格式,这可能涉及到递归处理嵌套的表格。 4. 输出结果:将JSON数据写入标准输出或指定的文件。 在实际应用中,Go-tablejson可以结合其他工具,如网络爬虫,来自动化地抓取...
资源分类:Python库 所属语言:Python 资源全名:json2table-1.1.4.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
表到JSON 尝试将HTML表转换为JSON。 ...还支持promises)。 响应始终是一个数组。... 从2.0版开始,tabletojson... 到const tabletojson = require('../lib/tabletojson').Tabletojson; 或const {Tabletojson: tabletojso
本示例将讲解如何使用AJAX结合JQuery库,从服务器获取JSON数据,并将这些数据以Table的形式展示在网页上。以下是详细的步骤和相关知识点: 1. **AJAX(Asynchronous JavaScript and XML)**:AJAX并非一种单一的...
在本文中,我们将深入探讨如何在ASP.NET MVC框架下,利用bootstrap-table插件通过AJAX方式获取JSON数据并实现分页功能。Bootstrap Table是一个轻量级、强大的前端组件,它提供了一种美观的方式来展示和操作表格数据...
2. 解析JSON数据。 3. 创建HTML表格结构,包括表头和数据行。 4. 遍历JSON数据,为每一条数据创建表格行和单元格。 5. 将表格添加到文档中显示。 通过这种方式,你可以灵活地根据JSON数据的结构动态构建和更新HTML...