这是之前记录在word里的问题,现在誊到博客里。温故知新。时常回顾问题。

7.27 Bootstrap validator remote 验证出错

用Bootstrap validator插件验证表单内容user时,用remote方法作静态实时验证用户名是否已存在,但是当输入a的时候就显示“用户名已存在”,并且后面继续输的时候一直显示已存在。

原因: Remote的url文件 0727.php数据返回出错。

<?php 

if($_POST['user'] == 'aa' && $_POST['pass'] == 'aaa'){
echo 'true';
}else{
echo 'false';
}
?>

但是Bootstrap validator验证时dataType是json,并且读取返回的response的valid字段值,进行判断 所以php中返回的应该是json格式数据。

 function runCallback() {
var xhr = $.ajax({
type: type,
headers: headers,
url: url,
dataType: 'json',
data: data
});
xhr.then(function(response) {
response.valid = false;
if ('function' === typeof condition) {
response = condition(response);
}
if ('function' === typeof success) {
success(response);
}
response.valid = response.valid === true || response.valid === 'true';
dfd.resolve($field, 'remote', response);
});

改为如下:

<?php 

if($_POST['user'] == 'aa'){
$arr = array("valid"=>'false');
echo json_encode($arr);
}else{
$arr = array("valid"=>'true');
echo json_encode($arr);
} ?>

此时验证功能正常。问题解决。

7.28 修改代码页面没有变化

mjad_crm 修改代码文件gulp后打开网站,发现没有修改。尝试后发现html文件修改页面有变化,但是js文件里写alert也不运行。

原因:页面有缓存 修改后ctrl+F5强制刷新页面即可。

7.31 Error: Failed to lookup view "/order/intoCashIndex" in views directory "views"

新增批量导入到款页面时,在路由中配置如下: 但是打开批量到款页面时,报错: Error: Failed to lookup view "/order/intoCashIndex" in views directory "views"

原因:路径出错,/views是模板路径,渲染的页面应该是 order/intoCashIndex 多写了一个/

改为 res.render('order/intoCashIndex',{});即可。

8.2 配置路由后,页面显示无法访问

路由配置如下:

router.get('/intoCashDetail/:id',(req,res,next) => {
var query = {
Code: req.params.id,
}; MJJS.permit(req,res,'/draw/getDrawBusinessInfo') &&
MJJS.valid('/draw/getDrawBusinessInfo', query, req, res, next, function(data){
res.render('order/intoCashDetail',{
config:config,
title:'批量导入到款记录-订单管理',
info:data,
listMenu:req.session.listMenu,
listRole: req.session.listRole
});
});
});

原因:查询接口发现,'/draw/getDrawBusinessInfo'这个接口需要的数据,有三个{businessCode,pageNum,pageSize}。

而我写的名字是code,不符合接口的参数要求,因此无法返回数据 改为businessCode后,页面成功显示

8.3 表格列表渲染

(1)像下面这样写,不用data和load函数时,必须手动渲染每列数据,否则列表接不到值

table: function() {
MJJS.ui.iTable('#advTable', {
default: MJJS.common.defaultTable,
columns: [
'no', //NO
'contacter', //联系人
'mobile', //联系电话
'customerName', //客户名称
'qq', //QQ
],
render: {
0: function(o){
return o.no || '-';
},
1: function(o) {
return o.contacter || '-';
},
2: function(o) {return new Date(n).format('yyyy-mm-dd');
},
3: function(o) {
},
            4: function(o){
            }
},
searchEmpty: '搜索不到数据',
url: API.list
});
},

(2)可以不写render函数,直接用data和load函数,会将接口返回的值o作为数据源,和当前表格合并起来,自动填充数据。

table: function() {
MJJS.ui.iTable('#advTable', {
default: MJJS.common.defaultTable,
columns: [
'checkbox', //全选
'no', //NO
'contacter', //联系人
'name' //操作
],
render: {},
data: function(o){
MJJS.data.objMergeTable(_table, o);
},
searchEmpty: '搜索不到数据',
load: function(table) {
_table = table;
},
error: function(err) {
if (err.code === '4000004') {
MJJS.page.dialog.alert(err.msg, function() {
window.location.href = '/logout';
});
}
},
url: API.list
});
},

注意在orderlist函数外定义一个全局函数_table,存储当前表格

当然,如果列表中的数据是动态的,比如改变筛选条件后重新渲染列表,这时需要定义一个arrList,存放列表的数据

common.js --- MJJS.data

8.3 导入批次内容挤到下一行的问题 批量导入到款单记录页面,导入批次内容挤到下一行的问题

原因:form-body有属性word-wrap,

word-wrap:break-word; 什么意思?????

防止长单词溢出父容器,使用word-wrap:break-word会在内部断句,因此9会溢出到下一行

 

解决办法:去掉最外层的<div class="form-body">就好了

8.10 初始进入页面时,为什么第二个form-group会有20px的多出来的高度?? 关闭模态框再打开或者点击查询后又没了???

再细一步 应该是table的问题 为什么页面刚加载的时候iTable样式没有加载进来??点击查询之后,或者关掉模态框再开iTable就有了呢???

+!+!+!+!+!+!+!+!!+!+!+!+!!+!+!+!+!+!+!+!+!!+!+!++!+我是答案分割线 厚!!!感谢琪总哈哈!!!!!

原来iTable是table()函数带的,当运行table函数时,才会加载iTable.css,而我的页面是在点击查询之后才调用table函数的:

$('#distrSearch').on('click', function() {
searchVal = $('#distributeNameCH').val();
planAudit.table();//调用table函数
});

那为什么别的页面的模态框表格没有这个问题呢??

因为别的页面大都是列表页,首先会调用table函数渲染页面列表,此时iTable已经被加载了,再打开modal就有样式了。

解决办法:

在当前html页面手动写iTable样式即可。

7.27-8.10 Problems的更多相关文章

  1. LuaStudio 9.27 去10分钟退出暗桩板

    http://bbs.pediy.com/showthread.php?p=1428203#post1428203

  2. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...

  3. 10分钟明白对偶建模法 / +Leampms的“主模型建模”和“对偶模型建模” 之 —— 三类最短路径问题

    摘要 对偶模型建模是非常有独特的一种建模方式 —— 当问题本身要求指标极小的情况下,对偶模型表现为求极大.本文给出三种最短路径问题的线性规划/混合整数规划模型,其中的第三类最短路径问题采用对偶建模方法 ...

  4. Java基础10:全面解读Java异常

    更多内容请关注微信公众号[Java技术江湖] 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM.SpringBoot.MySQL.分布式.中间件.集群.Linux ...

  5. 10分钟安装OpenStack

    1 OpenStack初学者的苦恼 2 OpenStack最低配置要求 3 配置UOS环境 3.1 设置网络 3.1.1 创建路由器 3.1.2 创建网络 3.1.3 创建两个子网 3.2 创建UOS ...

  6. 夯实Java基础系列10:深入理解Java中的异常体系

    目录 为什么要使用异常 异常基本定义 异常体系 初识异常 异常和错误 异常的处理方式 "不负责任"的throws 纠结的finally throw : JRE也使用的关键字 异常调 ...

  7. 27. USART, Universal synchronous asynchronous receiver transmitter

    27.1 USART introduction 通用同步异步接收发射机(USART)对需要NRZ异步串行数据格式行业标准的外部设备,提供了一个灵活的全双工数据交换的方法.USART使用分数波特率生成器 ...

  8. Python 3.10 中新的功能和变化

    随着最后一个alpha版发布,Python 3.10 的功能更改全面敲定! 现在,正是体验Python 3.10 新功能的理想时间!正如标题所言,本文将给大家分享Python 3.10中所有重要的功能 ...

  9. RFID 读写器 Reader Writer Cloner

    RFID读写器的工作原理 RFID的数据采集以读写器为主导,RFID读写器是一种通过无线通信,实现对标签识别和内存数据的读出和写入操作的装置. 读写器又称为阅读器或读头(Reader).查询器(Int ...

随机推荐

  1. Struts2中使用HttpServletRequest和HttpServletResponse

    一.非Ioc方式 这种方式主要是利用了com.opensymphony.xwork2.ActionContext类以及org.apache.struts2.ServletActionContext类, ...

  2. Xcode 8 注释快捷键失效

    sudo /usr/libexec/xpccachectl 重启

  3. [Shell]Shell脚本的执行方式

    ---------------------------------------------------------------------------------------------------- ...

  4. 16.1 用auth0服务 实现用登录和管理 使用auth版本的2个大坑。

    这是三周内容,实现用户登录和管理 回到master分支 切换到 han分支 更新一下 然后工作 开始工作写代码了 安装2个angular端的auth0的lib,也可不安装,后边有不安装的做法 不安装的 ...

  5. Hibernate学习笔记2.4(Hibernate的Id生成策略)

    通过设置告诉id该怎么设置. 1.通过xml方式 1.assigned 主键由外部程序负责生成,在 save() 之前必须指定一个.Hibernate不负责维护主键生成.与Hibernate和底层数据 ...

  6. UNION 与 UNION ALL的区别

    UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,列的数量.数据类型.顺序要保持一致!!! 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名. 例子: ...

  7. git初使用总结感悟

    ####首先说说git在工作中的一般流程1.首先就是进入新公司之后,要了解公司用的是什么代码托管,比如gitlab或者github(私有库花钱) 2.找技术同时把你加入到工作项目组并给你权限(一般都是 ...

  8. cv2.SIFT() AttributeError: 'module' object has no attribute 'SIFT' OpenCV Python can't use SURF, SIFT

    参考链接: https://stackoverflow.com/questions/18561910/opencv-python-cant-use-surf-sift For recent infor ...

  9. R各种数据类型的转换

    1.列表转化为数据框 df <- data.frame(matrix(unlist(列表), nrow=132, byrow=T),stringsAsFactors=FALSE)

  10. zabbix 利用python脚本实现短信告警

    一.编写脚本 cd /usr/local/zabbix-4.0.3/share/zabbix/alertscripts vi zabbix_sms.py 内容如下: #!/usr/bin/python ...