当前位置: 首页 > 工具软件 > jui_datagrid > 使用案例 >

bjui ajax.js,B-JUI 前端管理框架

万俟心思
2023-12-01

bjuiajax

bjuiajax是B-JUI封装的一系列ajax异步请求。

B-JUI消息JSON

当ajax请求时,服务端可以仅返回一个消息JSON告知前端框架处理的结果,这个JSON的格式如下:

{

"statusCode" : 200,

"message" : "处理成功!"

}

消息JSON的参数

JSON的keystatusCode、message可以在框架初始化时通过参数keys更改,statusCode的状态值有ok、error、timeout,代表成功、失败、超时三种类型,可以通过参数statusCode更改。

doajax异步请求

通过data属性使用:

Data API Ajax提交1

通过JS API使用:

BJUI.ajax('doajax', {

url: 'json/ajax/ajax-test1.json',

loadingmask: true,

okCallback: function(json, options) {

console.log('返回内容:\n'+ JSON.stringify(json))

}

})

参数:

名称

类型

默认值

描述

url

string

null

[必选] D-Url ajax处理的URL,a链接触发时可以将url定义在href属性。

type

string

POST

[可选] ajax请求方式。

data

object

null

[可选] ajax请求发送到服务器的数据。

confirmMsg

string

null

[可选] 执行动作前的确认提示。

okalert

boolean

true

[可选] 请求正常返回后,是否弹出相应的信息提示,当返回内容不是B-JUI消息JSON时,建议关闭。

callback

function(json)

null

[可选] 自定义回调函数。

okCallback

function(json, options)

null

[可选] 请求成功时的回调函数,该函数会覆盖B-JUI默认的成功回调函数,函数的options参数即是该doajax的options参数。

okAfterCallback

function(json, options)

null

[可选] 请求成功时的回调函数,该函数会在B-JUI默认的成功函数后执行,函数的options参数即是该doajax的options参数。

errCallback

function(json, options)

null

[可选] 请求失败时的回调函数,函数的options参数即是该doajax的options参数。

failCallback

function(msg, options)

null

[可选] ajax请求出错时的回调函数,函数的msg参数是服务端返回的出错信息,options参数即是该doajax的options参数。

loadingmask

boolean

false

[可选] ajax请求时是否显示数据加载遮罩。

target

selector

null

[可选] 数据加载遮罩的父容器,值为空时默认是当前Navtab或Dialog。

reload

boolean

false

[可选] 请求返回成功状态后,是否重新加载当前target。

forward

string

null

[可选] 跳转地址,请求返回成功状态后,加载forward地址对应的内容到当前target。

forwardConfirm

boolean

false

[可选] 请求返回成功状态后,是否重新加载当前target。

closeCurrent

boolean

false

[可选] 请求返回成功状态后,是否关闭当前target(仅navtab或dialog)。

tabid

string

null

[可选] 请求返回成功状态后,需要刷新的navtab的id集合,多个id以,分隔。

dialogid

string

null

[可选] 请求返回成功状态后,需要刷新的dialog的id集合,多个id以,分隔。

divid

string

null

[可选] 请求返回成功状态后,需要刷新的div(仅限通过doload加载的div)的id集合,多个id以,分隔。

datagrids

string

null

[可选] 请求返回成功状态后,需要刷新的datagrid的id集合,多个id以,分隔。

gridrefreshflag

boolean

true

[可选] 刷新datagrid时保留其快速筛选、排序、分页信息。

ajaxTimeout

int

BJUI.ajaxTimeout

[可选] 请求超时设置,即$.ajax的timeout属性。

请求返回成功状态

指服务端返回B-JUI的消息JSON并在json[BJUI.keys.statusCode] == BJUI.statusCode.ok时有效。

ajaxform异步表单提交

通过data属性使用(带验证):

Data API Ajax提交表单1(带验证)

姓名

住址


提交表单

通过JS API属性使用(无验证):

BJUI.ajax('ajaxform', {

url: 'json/ajax/ajax-test1.json',

form: $.CurrentNavtab.find('form:eq(1)'),

validate: false,

loadingmask: true,

okCallback: function(json, options) {

console.log('返回内容1:\n'+ JSON.stringify(json))

}

})

参数:

名称

类型

默认值

描述

url

string

null

[必选] 提交的URL,未指定时将取form的action属性。

type

string

POST

[可选] ajax请求方式,未指定该参数时会取form的method属性值。

confirmMsg

string

null

[可选] 提交表单前的确认提示。

beforeSubmit

function(form)

null

[可选] 执行动作前的确认函数,返回false时不提交表单。

validate1.31

boolean

true

[可选] 提交表单前是否需要验证(需要验证插件nicevalidate支持)。

alertmsg

boolean

false

[可选] 是否弹出验证未通过的信息提示。

okalert

boolean

true

[可选] 请求正常返回后,是否弹出相应的信息提示。

callback

function(json)

null

[可选] 自定义回调函数。

okCallback

function(json, options)

null

[可选] 请求成功时的回调函数,该函数会覆盖B-JUI默认的成功回调函数,函数的options参数即是该doajax的options参数。

okAfterCallback

function(json, options)

null

[可选] 请求成功时的回调函数,该函数会在B-JUI默认的成功函数后执行,函数的options参数即是该doajax的options参数。

errCallback

function(json, options)

null

[可选] 请求失败时的回调函数,函数的options参数即是该doajax的options参数。

failCallback

function(msg, options)

null

[可选] ajax请求出错时的回调函数,函数的msg参数是服务端返回的出错信息,options参数即是该doajax的options参数。

form

selector

null

[可选] 要提交的表单,通过JS API使用时需要。

loadingmask

boolean

true

[可选] ajax请求时是否显示数据加载遮罩。

target

selector

null

[可选] 数据加载遮罩的父容器,值为空时默认是当前Navtab或Dialog。

reload

boolean

false

[可选] 请求返回成功状态后,是否重新加载当前target。

forward

string

null

[可选] 跳转地址,请求返回成功状态后,加载forward地址对应的内容到当前target。

forwardConfirm

boolean

false

[可选] 请求返回成功状态后,是否重新加载当前target。

closeCurrent

boolean

false

[可选] 请求返回成功状态后,是否关闭当前target(仅navtab或dialog)。

tabid

string

null

[可选] 请求返回成功状态后,需要刷新的navtab的id集合,多个id以,分隔。

dialogid

string

null

[可选] 请求返回成功状态后,需要刷新的dialog的id集合,多个id以,分隔。

divid

string

null

[可选] 请求返回成功状态后,需要刷新的div(仅限通过doload加载的div)的id集合,多个id以,分隔。

datagrids

string

null

[可选] 请求返回成功状态后,需要刷新的datagrid的id集合,多个id以,分隔。

gridrefreshflag

boolean

true

[可选] 刷新datagrid时保留其快速筛选、排序、分页信息。

ajaxTimeout

int

BJUI.ajaxTimeout

[可选] 请求超时设置,即$.ajax的timeout属性。

请求返回成功状态

指服务端返回B-JUI的消息JSON并在json[BJUI.keys.statusCode] == BJUI.statusCode.ok时有效。

doload异步加载

通过Data属性使用:

Data API Ajax载入

通过JS API使用:

BJUI.ajax('doload', {

url: 'html/base/ajax_layout1.html',

target: '#ajaxload_test_box'

})

参数:

名称

类型

默认值

描述

target

selector

null

[必选] 目标容器的 jQuery选择器表达式 或 DOM对象。

url

string

null

[必选] D-Url 远程加载的URL,a链接触发时可以将url定义在href属性。

type

string

GET

[可选] ajax请求方式。

data

object

null

[可选] ajax请求发送到服务器的数据。

autorefresh

boolean/int(秒)

null

[必选] 指定该div容器是否可自动刷新,为true时默认间隔15秒自动刷新,指定具体的秒数则以指定的间隔秒值自动刷新。

callback

function(json)

null

[可选] 加载成功后的回调函数。

loadingmask

boolean

true

[可选] ajax请求时是否显示数据加载遮罩。

ajaxTimeout

int

BJUI.ajaxTimeout

[可选] 请求超时设置,即$.ajax的timeout属性。

方法:

方法名

参数类型

参数说明

描述

refreshdiv(id)

string

一个或多个div容器ID,多个ID以,分隔

刷新指定id的div容器。

refreshlayout(target)

selector

目标容器的 jQuery选择器表达式 或 DOM对象

刷新指定的div容器。

reloadlayout(options)

object

同doload的默认参数

重新载入某个div容器。

方法使用示例:

// 重新加载 #ajaxload_test_box 容器

BJUI.ajax('reloadlayout', {target:'#ajaxload_test_box', url:'html/base/ajax_layout2.html'})

ajaxdownload异步下载

通过Data属性使用:

ajax下载

通过JS API使用:

BJUI.ajax('ajaxdownload', {

url:'../ajaxdownload?t=1',

loadingmask: true

})

参数:

名称

类型

默认值

描述

url

string

null

[必选] D-Url 下载的URL。

type

string

GET

[可选] ajax请求方式。

data

object

null

[可选] 发送到服务器的数据。

target

selector

null

[可选] 数据加载遮罩的父容器,值为空时默认是当前Navtab或Dialog。

loadingmask

boolean

false

[可选] ajax请求时是否显示数据加载遮罩。

confirmMsg

string

null

[可选] 下载前的确认提示。

failCallback

function(responseHtml, url)

B-JUI框架提示及取消loadingmask遮罩效果。

[可选] ajax请求失败时的回调函数。

prepareCallback

function(url)

根据loadingmask参数加载遮罩。

[可选] ajax请求中的回调函数。

successCallback

function(url)

取消loadingmask遮罩效果。

[可选] ajax请求成功的回调函数。

ajaxdownload说明

需要依赖插件$.fileDownload。

ajaxsearch搜索表单1.31

通过data属性使用(不验证):

Ajax表单搜索(重载当前navtab,不验证)

姓名

住址


搜索表单

通过JS API属性使用(带验证):

BJUI.ajax('ajaxsearch', {

url: '../../html/base/ajax.html',

form: $.CurrentNavtab.find('form:eq(1)'),

validate: true,

loadingmask: true

})

参数:

名称

类型

默认值

描述

url

string

null

[必选] 提交的URL,未指定时将取form的action属性。

type

string

POST

[可选] ajax请求方式,未指定该参数时会取form的method属性值。

beforeSubmit

function(form)

null

[可选] 执行动作前的确认函数,返回false时不提交表单。

validate

boolean

true

[可选] 提交表单前是否需要验证(需要验证插件nicevalidate支持)。

alertmsg

boolean

false

[可选] 是否弹出验证未通过的信息提示。

searchDatagrid

selector

null

[可选] 将form域中的信息用来搜索指定datagrid,如果有该参数,则参数okalert之后的参数都无效。

form

selector

null

[可选] 要提交的表单,通过JS API使用时需要。

loadingmask

boolean

true

[可选] ajax请求时是否显示数据加载遮罩。

target

selector

null

[可选] 数据加载遮罩的父容器,值为空时默认是当前Navtab或Dialog。

okalert

boolean

true

[可选] 请求正常返回后,是否弹出相应的信息提示。

callback

function(json)

null

[可选] 自定义回调函数。

okCallback

function(json, options)

null

[可选] 请求成功时的回调函数,该函数会覆盖B-JUI默认的成功回调函数,函数的options参数即是该doajax的options参数。

okAfterCallback

function(json, options)

null

[可选] 请求成功时的回调函数,该函数会在B-JUI默认的成功函数后执行,函数的options参数即是该doajax的options参数。

errCallback

function(json, options)

null

[可选] 请求失败时的回调函数,函数的options参数即是该doajax的options参数。

failCallback

function(msg, options)

null

[可选] ajax请求出错时的回调函数,函数的msg参数是服务端返回的出错信息,options参数即是该doajax的options参数。

reload

boolean

false

[可选] 请求返回成功状态后,是否重新加载当前target。

forward

string

null

[可选] 跳转地址,请求返回成功状态后,加载forward地址对应的内容到当前target。

forwardConfirm

boolean

false

[可选] 请求返回成功状态后,是否重新加载当前target。

closeCurrent

boolean

false

[可选] 请求返回成功状态后,是否关闭当前target(仅navtab或dialog)。

tabid

string

null

[可选] 请求返回成功状态后,需要刷新的navtab的id集合,多个id以,分隔。

dialogid

string

null

[可选] 请求返回成功状态后,需要刷新的dialog的id集合,多个id以,分隔。

divid

string

null

[可选] 请求返回成功状态后,需要刷新的div(仅限通过doload加载的div)的id集合,多个id以,分隔。

datagrids

string

null

[可选] 请求返回成功状态后,需要刷新的datagrid的id集合,多个id以,分隔。

gridrefreshflag

boolean

true

[可选] 刷新datagrid时保留其快速筛选、排序、分页信息。

ajaxTimeout

int

BJUI.ajaxTimeout

[可选] 请求超时设置,即$.ajax的timeout属性。

请求返回成功状态

指服务端返回B-JUI的消息JSON并在json[BJUI.keys.statusCode] == BJUI.statusCode.ok时有效。

 类似资料: