这个业务太复杂了

输入框的东西要用接口查出来,居然不是用户手动输入

然后我就要做一个翻页的查询列表:

<div form id="troublePartSearch" style="display: none;">
<h4>肇事零件搜索</h4>
<div>
<label style="margin-left: 10px; display: inline-block;">配件代码:</label>
<input id="partCode" type="text" style="width: 49%;">
</div>
<div>
<label style="margin-left: 10px;display: inline-block;">配件名称:</label>
<input id="partName" style="width: 49%;" type="text">
</div> <div align="center">
<button type="button" id="partInfoSearchBtn" class="mui-btn mui-btn-red "><span class="mui-icon mui-icon-search">&nbsp;</span>查询</button>
<button type="button" id="partInfoSearchResetBtn" class="mui-btn mui-btn-red "><span class="mui-icon mui-icon mui-icon-refreshempty">&nbsp;</span>重置</button>
</div> <hr>
<div align="center"><h4>配件选择</h4></div>
<div style="overflow: scroll;padding: 5px;">
<table border="1">
<tr>
<td>序号</td>
<td>选择</td>
<td>配件代码</td>
<td>配件名称</td>
<td>备注</td>
<td>类型</td>
<td>类别名称</td>
<td>索赔价</td>
</tr>
<tbody id="partSearch"></tbody>
</table>
</div> <div id="pagingControl">
<div style="display: flex;justify-content: space-between;padding: 5px;">
<button id="firstPage" class="mui-btn-danger">首页</button>
<button id="previousPage" class="mui-btn-danger">上一页</button>
<button id="nextPage" class="mui-btn-danger">下一页</button>
<button id="lastPage" class="mui-btn-danger">尾页</button>
</div> <div style="display: flex;justify-content: space-between;padding: 5px;">
共<span id="totalPage"></span>页, <span id="totalRecord"></span>条记录&nbsp;
当前第<span id="currentPage"></span>页
</div>
</div> <div align="center" style="margin: 5px;">
<button id="partInfoSelected" class="mui-btn-danger">确认</button>
<button id="fallBack" class="mui-btn-danger">返回</button>
</div>
</div>

所以这些都是手写的,提供了一些基本的功能,当然还有跳转指定页数,调整每页展示数量,就没工夫搞这些细节了:

接口做好了封装,只管丢参数,不需要考虑其他东西

function loadPartInfoList(pp) {
dms.sendAjaxRequset({
url : dms.getDmsPath()["partsOrder"] + "/partinfocommon/productProble/parts",
data : pp,
async : false,
timeout: 3000, //超时时间设置为3秒;
contentType: "application/json",
type: 'GET',
success: function(result) {
let len = result.rows.length;
let total = result.total;
let htmlCode = '';
if (len == 0) {
htmlCode += '<tr><td colspan="8">没有匹配的记录</td></tr>';
$partSearch.empty();
$partSearch.append(htmlCode);
$pagingControl.hide();
return;
}
console.log('肇事配件查询结果:' + JSON.stringify(result));
$totalRecord.text(total);
let tp = (total % pp.limit == 0) ? (total / pp.limit) : (parseInt(total / pp.limit) + 1);
$totalPage.text(tp);
$currentPage.text(pageIndex);
for (let i = 0; i < len; i++) {
htmlCode += '<tr>';
htmlCode += ' <td>' + (i + 1) + '</td>';
htmlCode += ' <td><input type="radio" name="partSelect" pClass="'+ result.rows[i].MAIN_PART_CLASS +'" pNo="' + result.rows[i].MAIN_PART_NO + '" pName="' + result.rows[i].MAIN_PART_NAME + '"></td>';
htmlCode += ' <td>' + result.rows[i].MAIN_PART_NO + '</td>'; // 配件代码
htmlCode += ' <td>' + result.rows[i].MAIN_PART_NAME + '</td>'; // 配件名称
htmlCode += ' <td>' + result.rows[i].PART_REMARK + '</td>'; // 备注
htmlCode += ' <td>' + result.rows[i].MAIN_PART_CLASS + '</td>'; // 类型
htmlCode += ' <td>' + result.rows[i].PARAMETER_CLASS_NAME + '</td>'; // 类别名称
htmlCode += ' <td>' + result.rows[i].PART_PRICE + ' </td>'; // 索赔价
htmlCode += '</tr>';
}
$partSearch.empty();
$partSearch.append(htmlCode);
$pagingControl.show();
},
error : function (p1, p2, p3) {
console.log(JSON.stringify(p1) + '\n' + JSON.stringify(p2) + '\n' + JSON.stringify(p3) + '\n');
}
});
}

设置对应的事件执行

// 重置 肇事配件查询条件
$partInfoSearchResetBtn.on('click', function () {
pageIndex = 1;
$partCode.val('');
$partName.val('');
$partSearch.empty();
$pagingControl.hide();
}); // 肇事配件查询按钮
$partInfoSearchBtn.on('click', function() {
pageIndex = 1;
loadPartInfoList({
sort : 'PART_NO',
order : 'DESC',
offset : (pageIndex - 1) * 10,
limit : 10,
brandCode : $brandCode.attr('bc'), // resultObj.BRAND_CODE $brandCode.text()
partNo : $partCode.val(),
partName : $partName.val()
});
});
// 首页刷新
$firstPage.on('click', function () {
if (pageIndex == 1) {
mui.alert('已经是首页了!!!');
return;
}
pageIndex = 1;
loadPartInfoList({
sort : 'PART_NO',
order : 'DESC',
offset : (pageIndex - 1) * 10,
limit : 10,
brandCode : $brandCode.attr('bc'), // resultObj.BRAND_CODE $brandCode.text()
partNo : $partCode.val(),
partName : $partName.val()
});
});
// 上一页
$previousPage.on('click', function () {
if (pageIndex == 1) {
mui.alert('已经是首页了');
return;
}
-- pageIndex;
loadPartInfoList({
sort : 'PART_NO',
order : 'DESC',
offset : (pageIndex - 1) * 10,
limit : 10,
brandCode : $brandCode.attr('bc'), // resultObj.BRAND_CODE $brandCode.text()
partNo : $partCode.val(),
partName : $partName.val()
});
});
// 下一页
$nextPage.on('click', function () {
if ($currentPage.text() == $totalPage.text()) {
mui.alert('已经是尾页了');
return;
}
++ pageIndex;
loadPartInfoList({
sort : 'PART_NO',
order : 'DESC',
offset : (pageIndex - 1) * 10,
limit : 10,
brandCode : $brandCode.attr('bc'), // resultObj.BRAND_CODE $brandCode.text()
partNo : $partCode.val(),
partName : $partName.val()
});
});
// 尾页
$lastPage.on('click', function () {
if (pageIndex == parseInt($totalPage.text())) {
mui.alert('已经是尾页了!');
return;
}
pageIndex = parseInt($totalPage.text());
loadPartInfoList({
sort : 'PART_NO',
order : 'DESC',
offset : (pageIndex - 1) * 10,
limit : 10,
brandCode : $brandCode.attr('bc'), // resultObj.BRAND_CODE $brandCode.text()
partNo : $partCode.val(),
partName : $partName.val()
});
});
// 肇事配件查询 和 PDI检查单号 确认
$partInfoSelected.on('click', function () {
let pNo = $('input[name="partSelect"]:checked').attr('pNo');
let pName = $('input[name="partSelect"]:checked').attr('pName');
let pClass = $('input[name="partSelect"]:checked').attr('pClass');
$troublePartCode.val(pNo);
$troublePartName.val(pName);
$troublePartClass.val(pClass);
$troublePartSearch.hide();
$surfaceZone.show();
});

pageIndex在js标签的上部设置

let pageIndex = 1; // 用于肇事配件查询的变量

【JavaScript】无框架翻页处理的更多相关文章

  1. yii2.0下,JqPaginator与load实现无刷新翻页

    JqPaginator下载地址http://jqpaginator.keenwon.com/ 控制器部分: <?php namespace backend\controllers; use co ...

  2. yii2.0下,JqPaginator与Pjax实现无刷新翻页

    控制器部分 <?php namespace backend\controllers; use common\models\Common; use Yii; use yii\base\Contro ...

  3. ajax无刷新翻页后,jquery失效问题的解决

    例如 $(".entry-title a").click(function () {   只对第一页有效, 修改为 $(document).on('click', ".e ...

  4. css3 --- 翻页动画 --- javascript --- 3d --- Action

    用css3和javascript做一个翻页动画<Action> 如有疑问请参照我的上一篇随笔:http://www.cnblogs.com/kodoyang/p/Html_Css3_Car ...

  5. css3 --- 翻页动画 --- javascript --- 3d --- 准备

    用css3和javascript做一个翻页动画<知识准备部分> 如有更多疑问请参照:http://www.imooc.com/learn/77 这是用css3的-webkit-transi ...

  6. Atitit easyui翻页组件与vue的集成解决方案attilax总结

    Atitit easyui翻页组件与vue的集成解决方案attilax总结 ===============使用1 ===========\paggingUtil_easyui_vue.js2 C:\U ...

  7. ajax翻页效果模仿yii框架

    ajax翻页效果,模仿yii框架. 复制代码代码如下: <!DOCTYPE html>  <html>  <head>  <title>ajax分页_w ...

  8. JAVASCRIPT实现翻页保存已勾选的项目

    <input type="checkbox" name="a" value="1" /><br/> <inpu ...

  9. ListView 无 DataSource 依然用 DataPager 翻页

    ListView 有 DataSource 使用 DataPager 翻页ListView 无 DataSource 使用 DataPager 翻页问题描述点击两次才能翻页返回上一页,内容为空解决方法 ...

  10. javascript移动端 电子书 翻页效果

    1.后端给一长串的纯文本 2.前端根据屏幕的高度,将文本切割为 n 页 3.使用插件 turn.js 将切割好的每页,加上翻书效果 <!DOCTYPE html> <html lan ...

随机推荐

  1. Java StringBuffer 与StringBuilder 类的介绍与区别

    目录 StringBuffer类(用来解决String类的内存浪费问题) 构造方法 public StringBuffer(); 无参构造 public StringBuffer( String ); ...

  2. v-once指令 v-if和v-show

    v-once指令 只渲染元素和组件一次,之后元素和组件将失去响应式功能 v-if和v-show 根据表达式的布尔值(true/false)进行判断是否渲染该元素 注:v-if 有更高的切换开销,而 v ...

  3. 【简写Mybatis-02】注册机的实现以及SqlSession处理

    前言 注意: 学习源码一定一定不要太关注代码的编写,而是注意代码实现思想: 通过设问方式来体现代码中的思想:方法:5W+1H 源代码: https://gitee.com/xbhog/mybatis- ...

  4. kali更换apt镜像

    kali更换apt镜像 vim /etc/apt/sources.list 进来之后按i进入编辑模式,把其他的镜像#注释掉之后,加上新的镜像,然后esc退出编辑,按:输入wq保存并退出! 上面的办法不 ...

  5. H5弹窗底层滑动

    H5弹窗底层滑动 背景 产品提出H5 弹出窗滑动时,底层页面也会跟随滑动,需要调整禁止底层滑动,增加用户体验. 问题产生原因 ios 滑动时有回弹效果 顶层元素滑动默认行为 解决办法 阻止元素的默认( ...

  6. apollo数据库表查询方法-可以通过批量更新mysql数据库-比如批量更新IP地址等

    select `Id`, `AppId`, `Name` from ApolloPortalDB.App; select `NamespaceId`, `Key`, `Value`, `Comment ...

  7. 关于Lecture2建立一个Git远程仓库的补充

    Smiling & Weeping ---- 心之何如,有似万丈迷津, 遥亘千里. 其中并无舟子可渡人, 除了自渡,他人爱莫能助. Git 远程仓库(Github) Git 并不像 SVN 那 ...

  8. spring与设计模式之二单例模式

    网络上都说ApplicationContext是单例,但看了原始代码,我认为应该是一个错误的表达. 我们来看Spring6.x中用springboot创建一个程序的时候默认的applicationCo ...

  9. Atcoder Beginner Contest 321 G - Electric Circuit 题解 - 状压dp | 指定最低位

    为了更好的阅读体验,请点击这里 题目链接:G - Electric Circuit 看到了 \(N\) 的数据范围,因此是显然的状压 dp. 不妨设 \(f_S\) 为仅使用 \(S\) 集合中的所有 ...

  10. 实验2.ARP实验

    # 实验2.ARP实验 本实验用于验证arp以及arp表,arp缓存的使用,测试ping包时arp表的更新机制. 实验组 PC1 10.68.57.10 255.255.255.0 00-00-00- ...