$.alert(s,timeout,options)
【功能】
弹出提示对话框
【参数】
s:对话框中的字符timeout:超时后关闭(秒)options:其他参数
.size:sm|md|lg 对话框的大小
【用例】
$.alert('成功!');
$.alert('成功!',3, {size:"md"});
$.confirm()
$.confirm()
$.confirm(s,ok\_callback,options)
【功能】
弹出确认对话框
【参数】
s:对话框中的标题
ok\_callback:点击确认后的回调函数
options:其他参数
options.size:sm|md|lg 对话框的大小
options.body:string 对话框中的文本内容
【用例】
$.confirm('确定删除吗?',function() {alert("确定!");
});
$.ajax\_modal()
$.ajax\_modal()
$.ajax\_modal(url,title,size,callback,arg)
【功能】
AJAX 请求服务端,获取的内容弹出对话框。
【参数】
url:请求的服务端URL title:对话框标题size:对话框大小callback:回调函数arg:其他参数
【特别说明】
在下面的用例中,将展示这个过程,并没有直接调用 $.ajax\_modal() 函数,而是绑定到了标签的属性当中。
【原理】:
根据标签中的属性定义的参数,data-modal-title="" data-modal-url="" 等来调用 $.ajax\_modal()
鼠标点击标签定义的元素后,产生了一个 AJAX 请求,服务端会返回标准的 HTML 文档,其中元素包含class="ajax\_modal\_body" 的 innerHTML 会被“放入”对话框中。
并且里面的JS会被执行,而对话框相关的参数args.jmodal,args.callback,args.arg都会传递过来。这样可以方便的控制对话框的关闭。并且还可以再回调原页面的函数(属性data-modal-callback="" 定义)
【用例】
index.htm
范例1:
<buttonid="button1"data-modal-url="user-login.htm"data-modal-title="用户登录"data-modal-arg="xxx"data-modal-callback="login\_success\_callback"data-mo dal-size="md"></button>
范例2:
<aid="button1"href="user-login.htm"data-modal-title="用户登录"data-modal-arg="xxx"data-modal-callback="login\_success\_callback"data-modal-size="md">link
</a>
\--------------------------------------------------------------
\--------------------------------------------------------------
![](https://img.kancloud.cn/ee/c9/eec945acdf1c1bcbbc835d648a35ac7d_31x30.png)![](https://img.kancloud.cn/e4/c4/e4c4c6d3e860828e9968b0d66a42a612_31x31.png)![](https://img.kancloud.cn/bd/b4/bdb40531ac330204b4c4cecbd1f557d5_20x30.png)
范例3:
<ahref="user-login.htm"data-modal-title="用户登录"data-modal-size="md">li nk</a>
<script>
//如果需要指定回调(可选)
functionlogin\_success\_callback(code,message){alert(message);
}
</script>
route/user.php
if($action=='login') {if($method=='GET'){
include'./view/user\_login.htm';
}else{
$email=param('email');
$password=param('password');
// ...
message(0,'登陆成功');
}
}
\--------------------------------------------------------------
\--------------------------------------------------------------
\--------------------------------------------------------------
view/user\_login.htm
\--------------------------------------------------------------
<?php include'./view/header.inc.htm';?>
<div class="card">
<div class="card-header">登陆</div>
<div class="card-body ajax\_modal\_body">
<form action="user-login.htm"method="post"id="login\_form">
<div class="form-group input-group">
<div class="input-group-prepend">
<span class="input-group-text"><iclass="icon-user"></i>
</span>
name="email">
</div>
<input type="text"class="form-control"placeholder="Email"
<div class="invalid-feedback"></div>
</div>
<div class="form-group input-group">
<div class="input-group-prepend">
<span class="input-group-text"><iclass="icon-lock"></i>
</span>
码"name="password">
</div>
<input type="password"class="form-control"placeholder="密
<div class="invalid-feedback"></div>
</div>
<div class="form-group">
<button type="submit"class="btn btn-primary btn-block"data
-loading-text="正在提交...">登陆</button>
</div>
</form>
</div>
</div>
<?php include'./view/footer.inc.htm';?>
<script>
//模态对话框的脚本将会在父窗口,被闭包起来执行。
//接受传参
varargs=args||{jmodal:null,callback:null,arg:null};var jmodal=args.jmodal; //对应当前模态对话框
var callback=args.callback; //对应data-callback=""vararg=args.arg;//对应data-arg=""
var jform=$('#login\_form');
varjsubmit=jform.find('input\[type="submit"\]');var jemail=jform.find('input\[name="email"\]');
varjpassword=jform.find('input\[name="password"\]');jform.on('submit',function() {
jform.reset();jsubmit.button('loading');
var postdata=jform.serializeObject();
$.xpost(jform.attr('action'),postdata,function(code,message){if(code==0) {
jsubmit.button(message);
//关闭当前对话框
if(jmodal)jmodal.modal('dispose');
//回调父窗口
if(callback)callback(message);
}else if(code=='email') {jemail.alert(message).focus();jsubmit.button('reset');
}else if(code=='password') {jpassword.alert(message).focus();jsubmit.button('reset');
}else{
alert(message);jsubmit.button('reset');
![](https://img.kancloud.cn/fe/c5/fec53588eca168b906f3e894e110eb9a_31x31.png)![](https://img.kancloud.cn/07/37/0737da087836e783fa1e9fccc19cb34e_31x32.png)![](https://img.kancloud.cn/c9/ce/c9ce4f6956554bb236fcf5f08e79caf2_20x31.png)
}
});
returnfalse;
});
</script>
```
- Xiuno BBS 入门
- Xiuno BBS 是什么?
- 如何获取?
- 如何安装?
- URL-Rewrite 网址美化
- URL-Rewrite 网址美化
- 转发规则Nginx:
- Apache:
- Apache .htaccess
- Apache httpd.conf
- 性能优化
- 前端技术栈
- Bootstrap 4
- Bootstrap 4.0
- 效果:
- 中文资料:
- JQuery 3
- JQuery 3.1
- 效果:
- Tether.js
- Tether.js
- 效果:
- 官方网站:
- Fontawesome
- Fontawesome
- 部分图标预览
- xiuno.js
- xiuno.js 是什么?
- Xiuno.js 是什么?
- 效果:
- $.alert()
- $.alert()
- 程序结构
- 目录结构
- Xiuno BBS 4.0 目录结构
- 表结构
- Xiuno BBS 4.0 表结构
- MVC 分层架构
- MVC 分层架构
- 图例:
- 插件开发
- Hello, Xiuno Plugin!
- Hello, Xiuno Plugin!
- 补充:
- hook 机制
- Hook 机制
- overwrite 机制
- Overwrite 机制
- 风格模板
- 风格模板
- 发布你的插件
- 风格模板
- 插件示例
- 插件示例
- 一个单页的例子
- 一个单页的例子
- 常见问题
- post 表中的 message message_fmt 字段的区别?
- 论坛帖子数据
- 如何调用百度编辑器?
- 如何调用百度编辑器?
- Xiuno BBS 4.0 中的几种缓存 API
- 插件互相卸载机制
- 插件互相卸载机制
- 其他
- JSON API
- GET:
- POST:
- 注意: