接收Android数据 递归显示表格数据
<html>
<head>
<title>展示</title>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript">
var secondTdContent = {};
var thisJson, thisID; //返回的json 点击的ID
var thisType, thisTxtVal; //类型 文本框的值
var thisNodeLevelId; //
var androidjson;
var secondTdContent = {};
function testDiv() {
// document.getElementById("show").innerHTML = document.getElementsByTagName("html")[0].innerHTML;
}
$(function() {
//接收android传过来的json
function connectWebViewJavascriptBridge(callback) {
if(window.WebViewJavascriptBridge) {
callback(WebViewJavascriptBridge)
} else {
document.addEventListener(
'WebViewJavascriptBridgeReady',
function() {
callback(WebViewJavascriptBridge)
},
false
);
}
}
//发送json数据到android端
connectWebViewJavascriptBridge(function(bridge) {
bridge.init(function(message, responseCallback) {
console.log('JS got a message', message);
var data = {
'Javascript Responds': '测试中文!'
};
console.log('JS responding with', a);
responseCallback(data);
});
//接收到数据
bridge.registerHandler("functionInJs", function(data, responseCallback) {
// document.getElementById("show").innerHTML = ("data from Java: = " + data);
//发送到android端的数据:responseData=jsons数据
androidjson = data;
initTable(androidjson);
});
});
function initTable(androidjson) {
androidjson = eval('(' + androidjson + ')');
androidjson = JSON.parse(androidjson);
thisJson = androidjson.data.maintainStandardPlateMissions;
var template = androidjson.data;
var plateList = template.maintainStandardPlateMissions;
for(var plate_index = 0; plate_index < plateList.length; plate_index++) {
var plate = plateList[plate_index];
$("#model_content").append("<tr id='plate_" + plate.id + "'><td colspan='2' class='plateStyle'>" + plate.content + "</td> </tr>");
var itemList = plate.maintainStandardItem1Missions;
if(null != itemList && itemList.length > 0) {
for(var item_index = 0; item_index < itemList.length; item_index++) {
var item = itemList[item_index];
$("#model_content").append("<tr id='item_" + item.id + "'><td>" + item.content + "</td><td id='item_next_" + item.id + "'></td></table>");
var childList = item.maintainStandardItem2Missions;
secondTdContent["content"] = "";
if(null != childList && childList.length > 0) {
for(var child_index = 0; child_index < childList.length; child_index++) {
var child = childList[child_index];
switch(Number(child.resultType)) {
case 1: // 单选
if(child.isSelected == "1") { // 只显示选中的值
secondTdContent.content += child.name + "</br>";
}
break;
case 2: // 多选
if(child.isSelected == "1") {
secondTdContent.content += child.name + "</br>";
}
break;
case 3: // 输入
if(child.textContent == null) {
child.textContent = ""
}
secondTdContent.content += (child.name + ":" + child.textContent) + "</br>";
break;
case 4: // 单选 输入
case 5: // 多选输入
secondTdContent.content += child.isSelected == "1" ? (child.name + ":" + child.textContent + "</br>") : "";
break;
}
// digui(child);
}
}
$("#item_next_" + item.id).append(secondTdContent.content);
}
}
}
//有隐患的变色
// $("#model_content input[data-troubleLevel]").parent().parent().css('background-color', 'red')
}
});
//显示递归【暂时不用保留 扩展】
function digui(child) {
var childList = child.childList;
if(null != childList && childList.length > 0) {
secondTdContent.content += "(";
for(var child_index = 0; child_index < childList.length; child_index++) {
var child_child = childList[child_index];
//secondTdContent["content"] +=child_child.nodeType+"|"+child_child.name;
switch(child_child.nodeType) {
case 0:
if(child_child.isSelected == "1") {
if(Number(child.troubleLevel) > 0) {
secondTdContent.content += ('<input type="radio" disabled data-troubleLevel="' + child_child.troubleLevel + '" value="' + child_child.name + '" class="' + child_child.id + '" checked/>' + child_child.name);
} else {
secondTdContent.content += ('<input type="radio" disabled value="' + child_child.name + '" class="' + child_child.id + '" checked/>' + child_child.name);
}
} else {
secondTdContent.content += ('<input type="radio" disabled data-troubleLevel="' + child.troubleLevel + '" value="' + child_child.name + '" class="' + child_child.id + '" />' + child_child.name);
}
break;
case 1:
if(child_child.isSelected == "1") {
secondTdContent.content += ('<input type="checkbox" disabled value="' + child_child.name + '" class="' + child_child.id + '" checked/>' + child_child.name);
} else {
secondTdContent.content += ('<input type="checkbox" disabled value="' + child_child.name + '" class="' + child_child.id + '" />' + child_child.name);
}
break;
case 2:
if(!child_child.context) {
secondTdContent.content += (child_child.name + '<input type="text" class="' + child_child.id + '" value="' + child_child.context + '" readonly/>');
} else {
secondTdContent.content += (child_child.name + '<input type="text" class="' + child_child.id + '" value="' + child_child.context + '" readonly/>');
}
break;
case 3:
if(child_child.isSelected == "1") {
secondTdContent.content += ('<input type="radio" disabled value="' + child_child.name + '" class="' + child_child.id + '" checked />' +
child.name + '<input type="text" class="' + child.id + '" value="' + child.context + '" readonly />');
} else {
secondTdContent.content += ('<input type="radio" disabled name="' + child_child.nodeLevel + '" value="' + child_child.name + '" class="' + child_child.id + '"/>' +
child_child.name + '<input type="text" class="' + child_child.id + '" readonly />');
}
break;
case 4:
if(child.isSelected == "1") {
secondTdContent.content += ('<input type="checbox" value="' + child_child.name + '" class="' + child_child.id + '" checked disabled/>' +
child_child.name + '<input type="text" class="' + child_child.id + '" value="' + child_child.context + '" readonly/>');
} else {
secondTdContent.content += ('<input type="checbox" value="' + child_child.name + '" class="' + child_child.id + '" disabled/>' +
child_child.name + '<input type="text" class="' + child_child.id + '" readonly/>');
}
break;
}
digui(child_child);
}
secondTdContent.content += ")";
}
}
</script>
<style type="text/css">
* {
margin: 0;
padding: 0;
}
table tr td {
border: 1px solid #b4b4b4
}
table {
border-collapse: collapse;
}
.hidTrouble-color {
background-color: red;
color: #fff;
}
</style>
</head>
<body>
<p>
<xmp id="init" style="display:none">
</xmp>
</p>
<table id="model_content" style="">
</table>
<!-- <input type="text" value="测试" id="test"/> -->
<!-- <input type="button" value="显示" id="btn"/> -->
</body>
<!-- bootstrap -->
</html>
接收Android数据 递归显示表格数据的更多相关文章
- Java操作Jxl实现导出数据生成Excel表格数据文件
实现:前台用的框架是Easyui+Bootstrap结合使用,需要引入相应的Js.Css文件.页面:Jsp.拦截请求:Servlet.逻辑处理:ClassBean.数据库:SQLserver. 注意: ...
- tibble包:高效显示表格数据的结构
1 tibble包简介 包名: tibble 编码: UTF- 最新版本: 1.2 标题: 简单数据框 描述: 构建一个 'tbl_df' 类,可以比传统的R数据框提供更好的检查和打印功能. 作者: ...
- MySQL在控制台上以竖行显示表格数据
直接在SQL语句后面加\G即可,如: select * from user limit 10\G; 如果想要知道这些参数可以直接在命令行后面加入\?
- sql递归显示层级数据
;) as varchar(max)) as ssort from Category where ID = '123' union all select t.*, ) as varchar(max)) ...
- Android 本地tomcat服务器接收处理手机上传的数据之案例演示
上一篇:Android 本地tomcat服务器接收处理手机上传的数据之环境搭建 本篇基于上一篇搭建的服务器端环境,具体介绍Android真机上传数据到tomcat服务器的交互过程 场景:A ...
- SSM_CRUD新手练习(9)显示分页数据
我们已经做好了用来显示数据的分页模板,现在只需要将我们从后台取出的数据填充好,显示出来. 我们使用<c:forEach>标签循环取出数据,所以需要先导入JSTL标签库 <%@ tag ...
- easyui学习笔记7—在手风琴中显示表格
在这一篇中我们看看如何在手风琴里面显示表格数据的. 1.先看看引用的资源 <link rel="stylesheet" type="text/css" h ...
- Android Wear开发 - 数据通讯 - 第二节 : 数据的发送与接收
本节由介绍3种数据的发送接收:1.Data Items : 比特类型数据,限制100KB以内2.Assets : 资源类型数据,大小无上限3.Message : 发送消息,触发指令 http://de ...
- Android用surface直接显示yuv数据(二)
上一篇文章主要是參照AwesomePlayer直接用SoftwareRenderer类来显示yuv,为了能用到这个类,不惜依赖了libstagefright.libstagefright_color_ ...
随机推荐
- 零基础学习python_模块(50-52课)
今天学了下模块,那什么是模块呢?其实我们写的以py结尾的一个文件就是一个模块,模块也就是程序 还记得我们之前学过容器.函数.类吧 容器 -> 数据的封装 函数 -> ...
- android 开发 实现RecyclerView的列表单选功能
实现思维: 1.首先在一行的xml布局中添加一个选中效果的icon图片,未选中的情况下INVISIBLE或者GONE 都可以,推荐使用INVISIBLE它会占用布局位置但是不显示,这样可以避免布局中其 ...
- 虚拟机中安装CentOS7
初始安装: 1.安装新虚拟机时,选择稍后安装操作系统,这可以自己设置语言等信息 2.修改自定义硬件:为网卡生成一个mac地址,(这里需要注意,有时网卡会冲突,导致连接时好时坏,以后可以删除掉网卡,重新 ...
- ubuntu14.04 配置g++工具,并运行一个简单的c++文件
首先,对Ubuntu 14.04 LTS进行源更新,摘自下述链接: http://chenrongya.blog.163.com/blog/static/8747419620143185103297/ ...
- Python入门-随机漫步
Python入门-随机漫步,贴代码吧,都在代码里面 代码1 class文件 random_walk.py from random import choice class RandomWalk(): # ...
- Linux:常用命令【转载】
转载于:https://www.cnblogs.com/yjd_hycf_space/p/7730690.html 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架 ...
- py库: pyautogui (自动测试模块,模拟鼠标、键盘动作)
PyAutoGUI 是一个人性化的跨平台 GUI 自动测试模块 pyautogui 库 2017-10-4 pip install pyautogui python pip.exe install p ...
- beeline 连接hive
HiveServer2是一个能使客户端针对hive执行查询的一种服务,与HiverServer1比较,它能够支持多个客户端的并发请求和授权的:HiveCLI 和 hive –e的方式比较单一,HS2允 ...
- JavaScript数组的五个迭代方法的简单实例
<script> //every() var nums = [1,2,3,4,5]; var result = nums.every(function eve(item,index,arr ...
- Activity工作流学习(二)--Activity数据库
23张表 ACT_RE_资源库流程规划表 act_re_deployment 部署信息表 act_re_model 流程设计模型部署表 act_re_procdef 流程定义数据表 ACT_RU_运行 ...