接收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_ ...
随机推荐
- vmware centos7 动态ip->静态
TYPE=Ethernet BOOTPROTO=none DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_ ...
- mysql给查询的结果添加序号
1.法一: select (@i:=@i+1) i,a.url from base_api_resources a ,(select @i:=0) t2 order by a.id de ...
- 对于Servlet、Servlet容器以及一个Servlet容器-Tomcat
Servlet.Servlet容器等内容讲解 转载自http://blog.csdn.net/iAm333 对于Servlet.Servlet容器以及一个Servlet容器-Tomcat这些概念讲解的 ...
- mysql5.7-windows安装配置
sonar要求mysql5.6版本以上,所以安装一下最新的mysql5.7 采用相对名路径和命令行启动,这样是为了方便迁移.也提供了加入服务的指令,但没有进行测试 解压mysql的zip压缩包 解压后 ...
- system.data oracleClient 需要Oracle客户端8.1.7或high
- zookeeper(5)--基于watcher原理实现带注册中心的RPC框架
一.带版本控制的注册中心RPC框架 server端 //注册中心接口 public interface IRegisterCenter { public void register(String se ...
- Hive高级聚合GROUPING SETS,ROLLUP以及CUBE
scala> import org.apache.spark.sql.hive.HiveContextimport org.apache.spark.sql.hive.HiveContext s ...
- [Writeup]百度一下,你就知道
[Writeup]百度一下,你就知道 谢邀@宋雨田 人在607,刚下床 育才上网,信号不好 实名diss,能人宋雷 ---------------------- 以下是原答案 ------------ ...
- chattr 改变文件、目录属性 (chmod、passwd等涉及文件修改的命令提示Operation not permitted)
与chmod这个命令相比,chmod只是改变文件的读写.执行权限,更底层的属性控制是由chattr来改变的. lsattr查看文件或目录属性 chattr命令的用法:chattr [ -RVf ] [ ...
- block原理
block原理 block的本质是一个结构体,包含引用的外部变量及一个需要执行的函数的函数指针,在内存中可以有三个位置,即堆上.栈上和全局区(静态区).当block中没有引用外部变量时,block的位 ...