新建了一个webkit(HTML5)项目,可以很方便的用HTML+JS+CSS制作程序UI,现在想实现的效果是,程序集成一个sqlite数据库文件,用aardio读出来,然后使用json格式把数据传给前端UI进行显示,这样搞起来:

工程资源

这里写图片描述

  • 资源文件里面包含了sqlite数据库一个
  • HTML中引入了bootstrap做前端框架,以及相关的fonts和js
  • HTML下面的post文件夹(虚拟)中的dao.aardio相当于做php开发时候的后台程序,用来生成json格式字符串给前端调用
  • 用户库里面新建dex库用来写自定义类,用来连接sqlite数据库并返回查询结果,是aardio里面的table类型数据

主要代码部分

HTML下面的main.aardio(其实就是程序的HTML界面)

<!doctype html>
<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/main.css">
<script src="js/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script>
$(document).ready(function(e) {
    $.get("post/dao.aardio",function(data){
        //$("#out").hide();
        var jData=eval(data);  //这里一定要对get获得的原始data数据进行eval处理,否则下面的.each无法正常使用
        $.each(jData,function(i,item){
            $("#out2").append(item.id+"  " + item.name);
        });


    });
});
</script>
<body>
<div id="header">
  <div class="ctrls"> <a id="window-min" onclick="windowCommand('min')">0</a> <a id="window-max" onclick="this.innerText = windowCommand('max')?'2':'1';">1</a> <a id="window-close" onclick="windowCommand('close')">r</a> </div>
  <div class="title-bar" onmousedown="windowCommand('drag')"> <span class=title> 我 的 软 件 </span></div>
</div>
<div id="container">
  <div class="lside">
    <ul class="nav nav-pills nav-stacked">
        <li role="presentation" class="active"><a href="#">流程顺序</a></li>
      <li role="presentation"><a href="#">1.确定检查专业</a></li>
      <li role="presentation"><a href="#">2.抽取检查组长</a></li>
      <li role="presentation"><a href="#">3.抽取县区名单</a></li>
      <li role="presentation"><a href="#">4.抽取执法人员名单</a></li>
      <li role="presentation"><a href="#">5.抽取企业名单</a></li>
      <li role="presentation"><a href="#">6.导出结果</a></li>
    </ul>
  </div>
  <div class="rside"> 
    <div id="step1">
    <h3>请选择要检查的专业</h3>
    <select name="zhuanyeSelect" multiple onChange="alert();">
        <option value="工业">工业</option>
        <option value="能源">能源</option>
        <option value="投资">投资</option>
    </select>
    <p id="out"></p>
    <hr />
    <p id="out2"></p>
    </div>
  </div>
</div>
<div id="footer">
  <button onclick="javascript:external.aardioCall('hello')">点击这里调用external.aardioCall('hello') </button>
</div>
</body>
</html>

HTML/post/dao.aardio

import dex;
dao=dex.dao();
var zhuanye=dao.getZhuanye();
import web.json;
var jstr=web.json.stringify(zhuanye,true);
print("(" + jstr + ")");    //这里一定要在转好的json字符串外面再加上一对括号,否则jQuery无法识别

用户库下面的dex

namespace dex{
import sqlite;

class dao{


    getZhuanye=function(){
        var db=..sqlite("\res\database.db");
        var sql="select * from zhuanye";
        var result=db.getTable(sql);
        return result;
    }
}

}
GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:1 个月前 )
960b763e 2 个月前
8c391e04 5 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐