ajax-post提交前执行预处理
~~~
// 在ajax-post所在btn上增加subbefore-func的属性,指定预处理函数
~~~
在ajax按钮上提交附加内容
~~~
<button type="submit" class="button btn-primary ajax-post" append-data='{"opt":"save"}' target-form="form-horizontal"> 保存 </button>
<button type="submit" class="button btn-primary ajax-post" append-data='{"opt":"save-new"}' target-form="form-horizontal"> 保存并新增 </button>
~~~
处理ajax返回结果:doDisAjaxReturn(data,that)
data组成
* code 是否成功
* url 成功操作跳转地址
* norefresh 成功后不刷新/不跳转
* msg 提示语
例:
~~~
$.get(url).success(function(data){
data.norefresh = 1;
doDisAjaxReturn(data);
});
~~~
------------------------------------------| 代码实现 |------------------------------------------
~~~
window.doDisAjaxReturn = function(data,that){
var jump_time = 1500;
$('.switch-hidden-temp').remove();
if( typeof data!='object' ){
return ;
}
//zeroModal.closeAll();
unifyExecuteZeroModalFunc('close')
if ( data.code*1>0 ) {
var updateAlertMsg = data.msg;
if( that && $(that).hasClass('no-refresh')){
jump_time = 1000;
}else if (data.url) {
updateAlertMsg = data.msg;// + ' 页面即将自动跳转~';
}
updateAlert(updateAlertMsg,'success');
setTimeout(function(){
var is_not_refresh = 0;
if( that && $(that).hasClass('no-refresh') ){
is_not_refresh = 1;
}else if( typeof data.norefresh!='undefined' && data.norefresh ){
is_not_refresh = 1;
}
if( is_not_refresh==1 ){ // 不刷新
$('#top-alert').find('button').click();
}else if (data.url) {
if( Think.modal_show==1 ){
if( Think.modal_jump_type=="0" ){ //0:父级页面刷新(默认)
parent.location.reload();
}else if( Think.modal_jump_type=="1" ){ //1:父页面跳转
parent.location.href=data.url;
}
}else{
location.href=data.url;
}
}else {
if( Think.modal_show==1 ){
parent.location.reload();
}else{
location.reload();
}
}
},jump_time);
}else{
updateAlert(data.msg,'error');
setTimeout(function(){
if (data.url) {
if( Think.modal_show==1 ){
if( Think.modal_jump_type=="0" ){ //0:父级页面刷新(默认)
parent.location.reload();
}else if( Think.modal_jump_type=="1" ){ //1:父页面跳转
parent.location.href=data.url;
}
}else{
location.href=data.url;
}
}else{
$('#top-alert').find('button').click();
}
},jump_time);
}
removeBtnDisabled(that);
}
~~~
- 序言
- 环境搭建
- 下载及安装
- 构建器
- 构建器概述
- 模版构建器(TBuilder)
- Tab组件
- Topbar组件
- 按钮
- 顶部按钮配置
- 按钮配置明细
- 表格(table)
- Table案例
- 「方法」加载数据
- 「方法」设置数据列
- 「方法」列排序
- 「组件」检索过滤器
- 「组件」顶部按钮
- 「组件」列表按钮
- 「配置」列快速编辑
- 「配置」列附加内容
- 「配置」显隐列表复选框
- 「配置」自定义样式
- 表单(form)
- Form案例
- 「方法」添加组件(addWidgets)
- 「方法」数据检索过滤(filter)
- 「组件」富文本编辑器(kindeditor|editormd)
- 「组件」图片组件(images|cropper)
- 「组件」select listbox组件(listbox)
- 「组件」颜色选择器(button_color)
- 「组件」自定义内容
- 「配置」显隐字段关联(open_by)
- 「配置」form布局(layoutView)
- 「配置」隐藏描述区(hideWidgetsDesc)
- 「配置」数据验证(validate)
- 「配置」隐藏表单底部按钮(hideFormButton)
- 「配置」字段tip提示(tip)
- 自定义页面(custom)
- Custom案例
- 「组件」echart
- 「组件」Tile Widgets
- 「配置」custom布局
- 「配置」自定义html内容
- 「配置」自定义提醒页面
- 树形(tree)
- Tree案例
- 左侧菜单区配置
- 关闭左侧菜单(hideLeftMenu)
- 顶部按钮配置
- 自定义菜单配置
- 展现方式配置
- 表内增删改(Tabullet)
- 通用设置
- 依赖文件加载(插件/js/css)
- 指定布局/模版
- 内容定位栏(setTrayMenu)
- 设置内容区侧栏
- 模态框打开页面
- 组件构建器(TWidget)
- echarts
- table
- form组件
- Tabs组件
- builder构建
- titleLine
- 数据构建器(DBuilder)
- 概述(案例)
- 「方法」获取单条记录详情
- 「方法」获取分页列表数据
- 「方法」排序
- 「方法」设置查询字段
- 「方法」快速编辑
- 「方法」数据导出
- 「方法」联表查询
- 「方法」查询数据再处理
- 「配置」回调处理
- 「配置」设置过滤字段
- 「配置」指定过滤字段匹配值
- 「配置」增加编辑支持
- 「配置」查询出全部数据
- 辅助类
- Excle
- 模块开发
- 插件开发
- 扩展
- 行为扩展
- 行为日志
- 杂项
- 图片异步加载
- jquery插件zeroModal
- 提示
- form表单验证
- ajax相关
- 展开收起
- 常用函数
- 其他插件
- DEMO
- 增删改查
- 安全
- XSS 攻击
- 注入攻击
- CSRF 攻击
- 其他攻击和漏洞
- 开发
- TBuilder组件开发
- 更新日志
- 关于文档