接收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_ ...
随机推荐
- 4、申请开发(Development)证书和描述文件
开发(Development)证书用于测试环境下使用,可以直接安装到手机上(不用提交到Appstore),但一个描述文件最多只能绑定100台设备(因此通过这种证书正式发布应用是行不通的). 申请开发( ...
- ios自动监测更新
http://blog.csdn.net/davidsph/article/details/8931718
- spark historyserver 页面反应很慢 jvm堆调参
我们的spark historyserver 最近页面打开很慢 jstat -gcutil pid 1000 发现full gc 相当严重 查看堆大小,发现默认堆1G,打算修改到4G jps -lvm ...
- centos7系统分区方案
个人认为:硬盘如果够大,可以单独划分一个data盘,以防止rm -rf / Centos 7.2基础安装和配置(含分区方案建议) 参考网站: https://www.cnblogs.com/set- ...
- twisted reactor执行流程
#reactorbase的主循环 def mainLoop(self): while self._started: try: while self._started: # Advance simula ...
- HTML5 实现获取 gzip 压缩数据,并进行解压,同时解决汉字乱码,相关 pako.js
1, 下载 pako.js => http://nodeca.github.io/pako/#Deflate.prototype.onData 2, 首先需要了解一下 XMLHttpReques ...
- leetcode41
package main import ( "fmt" ) func firstMissingPositive(nums []int) int { m := make(map[in ...
- Redis简单生产者消费者
注意:redis客户端执行是单线程的,不能将客户端放在外面,内部执行使用多线程的方式. // 创建生产端连接 final Jedis jedisProducter = new Jedis(R_HOST ...
- EF 配置MySQL
添加 mysql dll 引用 WebConfig 配置: 1.先添加connectionstrings,providerName 换成 mysql的 <connectionStrings> ...
- R-CNN 学习记录
CNN是一个运用卷积神经网络进行图片分类的开山之作.RCNN是第一个把图片分类和目标检测连接起来的作品. RCNN主要解决的问题是: 1.怎样用深度神经网络进行目标定位:2.怎样用小批量的标注数据来训 ...