Cordys HTML5 SDK BootStrap

如下例子  BootStrap的分页技术,需先了解,如下例子:
<head>
    <title>custom-ajax</title>
    <meta charset="utf-8">
    <link rel="stylesheet" href="../assets/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="../assets/bootstrap-table/src/bootstrap-table.css">
    <link rel="stylesheet" href="../assets/examples.css">
    <script src="../assets/jquery.min.js"></script>
    <script src="../assets/bootstrap/js/bootstrap.min.js"></script>
    <script src="../assets/bootstrap-table/src/bootstrap-table.js"></script>
    <script src="../ga.js"></script>
</head>
<body>
    <div class="container">
        <h1>Custom Ajax</h1>
        <p>Use <code>ajax</code> option: A method to replace ajax call. Should implement the same API as jQuery ajax method.</p>
        <table id="table"
               data-toggle="table"
               data-height="460"
               data-ajax="ajaxRequest"
               data-search="true"
               data-side-pagination="server"
               data-pagination="true">
            <thead>
            <tr>
                <th data-field="id">ID</th>
                <th data-field="name">Item Name</th>
                <th data-field="price">Item Price</th>
            </tr>
            </thead>
        </table>
    </div>
<script>
    var $table = $('#table');

    // custom your ajax request here
    function ajaxRequest(params) {
        // data you need
        console.log(params.data);
        // just use setTimeout
        setTimeout(function () {
            params.success({
                total: 100,
                rows: [{
                    "id": 0,
                    "name": "Item 0",
                    "price": "$0"
                }]
            });
            // hide loading
            params.complete();
        }, 1000);
    }
</script>
</body>
</html>


 
Cordys 的HTML5 SDK已经封装好了数据返回Json格式,XML 格式如下:                                                                                                                <tuple xmlns="http://com.unicom.bopm/organization">
				<old>
					<SM_ACCOUNT>
						<USERNUM>849</USERNUM>
						<ACC_ID>8bfb8ecf-44be-11e5-e654-db554f8e1fc1</ACC_ID>
						<ACC_NAME>cyt</ACC_NAME>
						<USER_NAME>cyt</USER_NAME>
						<SORT_NO null="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
						<STATUS_SIGN>1</STATUS_SIGN>
						<CREATE_TIME>2015-07-25T08:26:31.0</CREATE_TIME>
						<RN>1</RN>
					</SM_ACCOUNT>
				</old>
			</tuple>
			<tuple xmlns="http://com.unicom.bopm/organization">
				<old>
					<SM_ACCOUNT>
						<USERNUM>849</USERNUM>
						<ACC_ID>1792f9ca-7c0a-11e5-e638-b0a2159517aa</ACC_ID>
						<ACC_NAME>df001</ACC_NAME>
						<USER_NAME>df001</USER_NAME>
						<SORT_NO null="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
						<STATUS_SIGN>1</STATUS_SIGN>
						<CREATE_TIME>2015-07-24T05:33:31.0</CREATE_TIME>
						<RN>2</RN>
					</SM_ACCOUNT>
				</old>
			</tuple>
			<tuple xmlns="http://com.unicom.bopm/organization">
				<old>
					<SM_ACCOUNT>
						<USERNUM>849</USERNUM>
						<ACC_ID>73652d05-1afa-11e5-e638-a37a6f55dfca</ACC_ID>
						<ACC_NAME>A</ACC_NAME>
						<USER_NAME>A</USER_NAME>
						<SORT_NO null="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
						<STATUS_SIGN>1</STATUS_SIGN>
						<CREATE_TIME>2015-07-24T05:30:34.0</CREATE_TIME>
						<RN>3</RN>
					</SM_ACCOUNT>
				</old>
			</tuple>


 (1):为了方便,把任何对象转为数组


/**
 * 返回格式化厚的请求返回的实体对象(queryObject)方式
 * @param entity
 */
formatCordysAjaxQueryEntity : function (entity) {
	var arr = [];
	if (entity['tuple']) {
		$.cordys.utils.formatCustomObject(entity['tuple']).forEach(function (value) {
			var prop = Object.keys(value.old)[0];
			arr.push(value['old'][prop]);
		});
	}
	return arr;
},
/**
 * 把一个对象转换成对象数组
 * @param obj
 * @returns {*}
 */
formatCustomObject : function (obj) {
	if (!obj.length) {
		var objArr = [];
		objArr[0] = obj;
		return objArr;
	} else
		return obj;
	/**
	 * 加载js文件
	 */
},



(2):在Cordys ajax上面继续封装一层



	/**
	 * 封装发送Ajax请求函数,返回延迟函数
	 * @param opts 方法属性
	 * @returns {*} 返回延迟函数
	 */
	sendCordysAjax : function (opts) {
		opts.dataType = 'xml json';
		opts.loginUrl = '/home/RJDB2014/unicom/home/login.html';
		return $.cordys.ajax(opts);
	},

 $.cordys.utils.sendCordysAjax({
        method: "ListAllAccount", 
        namespace: "http://com.unicom.bopm/organization",
        parameters: {
            pageNumber: pageNum,
            pageSize: pageSize
        }
    }).done(function (orgResult) {
            account = $.cordys.utils.formatCordysAjaxQueryEntity(orgResult);
            if (account[0])
                accountNum = account[0][Object.keys(account[0])[0]];
            else
                accountNum = 0;
            $table.show();
        }
    ).fail(function (error) {
            alert("查询失败,请重试!");
            console.log(error);
        }
    );

 

(3):bootstrap table 自动封装数据列子

HTML

<table id="table">
    <thead>
    <tr>
        <th data-field="name">Name</th>
        <th data-field="stargazers_count">Stars</th>
        <th data-field="forks_count">Forks</th>
        <th data-field="description">Description</th>
    </tr>
    </thead>
</table>

JS

var data = [
    {
        "name": "bootstrap-table",
        "stargazers_count": "526",
        "forks_count": "122",
        "description": "An extended Bootstrap table with radio, checkbox, sort, pagination, and other added features. (supports twitter bootstrap v2 and v3) "
    },
    {
        "name": "multiple-select",
        "stargazers_count": "288",
        "forks_count": "150",
        "description": "A jQuery plugin to select multiple elements with checkboxes :)"
    },
    {
        "name": "bootstrap-show-password",
        "stargazers_count": "32",
        "forks_count": "11",
        "description": "Show/hide password plugin for twitter bootstrap."
    },
    {
        "name": "blog",
        "stargazers_count": "13",
        "forks_count": "4",
        "description": "my blog"
    },
    {
        "name": "scutech-redmine",
        "stargazers_count": "6",
        "forks_count": "3",
        "description": "Redmine notification tools for chrome extension."
    }
];

$(function () {
    $('#table').bootstrapTable({
        data: data
    });
});


Result :



http://bootstrap-table.wenzhixin.net.cn/examples/#card-view



ss['tuple'][0]['old']
ss['tuple']['old']






BootStrap 分页 


前端 html

<input type="button" id="searchProc" value="查询" class="btn btn-danger" onClick="reloadTable(getAccountByValue);"/>
							
<div class="col-md-12 text-center">
	<ul class="pagination" id="myPager"></ul>
</div>
	


var account = [];
var accountNum;

function reloadTable(ajaxFunction) {
    $table.bootstrapTable("destroy");
    $table.bootstrapTable({
        height: 470,
        clickToSelect: true,
        SingleSelect: true,
        ajax: ajaxFunction,
        cache: false,
        sidePagination: "server",
        pagination: true
    });
}


//查询按钮时的方法
function getAccountByValue(params) {
    sendCordysGetRequest((params.data.offset / params.data.limit + 1), params.data.limit)
        .done(function () {
            params.success({
                total: accountNum,
                rows: account
            });
            params.complete()
        });
}

function sendCordysGetRequest(pageNum, pageSiz) {
    var v_acc_name = $("#S_ACC_NAME").val();
    var v_user_name = $("#S_USER_NAME").val();
    return $.cordys.utils.sendCordysAjax({
        method: "GetAccountByValue", //通过查询条件查询租户内租户账号信息
        namespace: "http://com.unicom.bopm/organization",
        parameters: {
            acc_name: v_acc_name,
            user_name: v_user_name,
            pageNumber: pageNum,
            pageSize: pageSiz
        }
    }).done(function (orgResult) {
            account = $.cordys.utils.formatCordysAjaxQueryEntity(orgResult);
            if (account[0])
                accountNum = account[0][Object.keys(account[0])[0]];
            else
                accountNum = 0;
        }
    ).fail(function (error) {
            alert("查询失败,请重试!");
            console.log(error);
        }
    );
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值