<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数据 递归显示表格数据的更多相关文章

  1. Java操作Jxl实现导出数据生成Excel表格数据文件

    实现:前台用的框架是Easyui+Bootstrap结合使用,需要引入相应的Js.Css文件.页面:Jsp.拦截请求:Servlet.逻辑处理:ClassBean.数据库:SQLserver. 注意: ...

  2. tibble包:高效显示表格数据的结构

    1 tibble包简介 包名: tibble 编码: UTF- 最新版本: 1.2 标题: 简单数据框 描述: 构建一个 'tbl_df' 类,可以比传统的R数据框提供更好的检查和打印功能. 作者: ...

  3. MySQL在控制台上以竖行显示表格数据

    直接在SQL语句后面加\G即可,如: select * from user limit 10\G; 如果想要知道这些参数可以直接在命令行后面加入\?

  4. sql递归显示层级数据

    ;) as varchar(max)) as ssort from Category where ID = '123' union all select t.*, ) as varchar(max)) ...

  5. Android 本地tomcat服务器接收处理手机上传的数据之案例演示

    上一篇:Android 本地tomcat服务器接收处理手机上传的数据之环境搭建     本篇基于上一篇搭建的服务器端环境,具体介绍Android真机上传数据到tomcat服务器的交互过程   场景:A ...

  6. SSM_CRUD新手练习(9)显示分页数据

    我们已经做好了用来显示数据的分页模板,现在只需要将我们从后台取出的数据填充好,显示出来. 我们使用<c:forEach>标签循环取出数据,所以需要先导入JSTL标签库 <%@ tag ...

  7. easyui学习笔记7—在手风琴中显示表格

    在这一篇中我们看看如何在手风琴里面显示表格数据的. 1.先看看引用的资源 <link rel="stylesheet" type="text/css" h ...

  8. Android Wear开发 - 数据通讯 - 第二节 : 数据的发送与接收

    本节由介绍3种数据的发送接收:1.Data Items : 比特类型数据,限制100KB以内2.Assets : 资源类型数据,大小无上限3.Message : 发送消息,触发指令 http://de ...

  9. Android用surface直接显示yuv数据(二)

    上一篇文章主要是參照AwesomePlayer直接用SoftwareRenderer类来显示yuv,为了能用到这个类,不惜依赖了libstagefright.libstagefright_color_ ...

随机推荐

  1. JIRA敏捷sprint需求统计设置

    1.JIRA->My Dashboard ->添加它的过滤条件 2.过滤条件产生,将sql拷贝至步骤1编辑的JQL中

  2. redis的5种类型和所用命令

    数据操作 redis是key-value的数据,所以每个数据都是一个键值对 键的类型是字符串 值的类型分为五种: 字符串string 哈希hash 列表list 集合set 有序集合zset 数据操作 ...

  3. raw格式和qcow2格式

    Raw: "raw" 镜像格式是最最简单的,并且是被 KVM 和 Xen 原生支持的格式,你 可以想象裸格式镜像和块设备文件是二进制位相当的,就好像从块设备拷 贝过来的,比方说,使 ...

  4. 使用DolphinPHP的框架中的excel插件导入数据

    直接上函数吧 public function importfile() { if ($this->request->isPost()) { if($_POST['files']) { Cu ...

  5. github中SSH公钥的生成与添加

    在终端中输入ssh-keygen -t rsa -C "133XXXXXX@qq.com" 按3个回车,密码为空这里一般不使用密钥. 最后得到了两个文件:id_rsa和id_rsa ...

  6. mybatis四(动态sql)

    <1><select id="selectUserByConditions" parameterType="user" resultType= ...

  7. spark基础知识介绍(包含foreachPartition写入mysql)

    数据本地性 数据计算尽可能在数据所在的节点上运行,这样可以减少数据在网络上的传输,毕竟移动计算比移动数据代价小很多.进一步看,数据如果在运行节点的内存中,就能够进一步减少磁盘的I/O的传输.在spar ...

  8. 1. 怎么设置可以使得虚拟机里面既可以访问主机也可以访问局域网而且是静态ip

    方法1: Bridged方式(桥接): (1). 虚拟机网络适配器设置为桥接 (2). 主机设置静态ip (3). 虚拟机也设置静态ip且和宿主机在同一网段 Bridged方式: 在图1中Networ ...

  9. MySQL 5.7.20 ONLY_FULL_GROUP_BY

    < SQL_MODE 的配置方式 > 01,默认情况下 5.7.20 MySQL 开启该模式,我们可以用指 SQL 预计查看 => select @@global.sql_mode; ...

  10. 机器学习进阶-图像形态学操作-膨胀操作 1.cv2.dilate(进行膨胀操作)

    1.cv2.dilate(src, kernel, iteration) 参数说明: src表示输入的图片, kernel表示方框的大小, iteration表示迭代的次数 膨胀操作原理:存在一个ke ...