带有 ajax 的 Fancybox on click 事件会触发多个 ajax 请求
Fancybox on click event with ajax fires multiple ajax request
我得到了我想要的输出,但这不是最好的方法,因为 ajax 每次点击都会复制。
这是我的代码:
<a href="/messages/schedule" class="greenbtn fancybox">Schedule</a>
$('a.fancybox').click(function() {
$('a.fancybox').fancybox({
width : 600,
height : 300,
fitToView : false,
autoSize : false,
type : 'ajax',
ajax : { data : {'receiver_id' : $('#receiver_id').val(), 'subject' : $('#subject').val(), 'body': CKEDITOR.instances.body.getData()}}
});
});
第一次单击会触发一个 ajax 请求,第二次单击会触发两个,依此类推。我该如何解决这个问题?
我也尝试了点击的就绪函数,但就绪函数没有提供我在 ajax 数据选项中传递的更新参数。
在尝试了各种解决方案后,我终于解决了它。这是我的代码
$('a.fancybox').click(function() {
$.ajax({
type : "POST",
cache : false,
url : "/messages/schedule",
data : {'receiver_id' : $('#receiver_id').val(), 'subject' : $('#subject').val(), 'body': CKEDITOR.instances.body.getData()},
success: function(data) {
$.fancybox(data, {
width : 600,
height : 300,
fitToView : false,
autoSize : false
});
}
});
});
试试这个。
<a href="/messages/schedule" class="greenbtn fancybox">Schedule</a>
$(document).ready(function() {
var getData = function() { return { data : {'receiver_id' : $('#receiver_id').val(), 'subject' : $('#subject').val(), 'body': CKEDITOR.instances.body.getData()}}; };
$('a.fancybox').fancybox({
width : 600,
height : 300,
fitToView : false,
autoSize : false,
type : 'ajax',
ajax : getData
});
试试这个花哨的盒子 2:
<a href="/messages/schedule" class="greenbtn fancybox">Schedule</a>
$('a.fancybox').click(function() {
$('a.fancybox').off("click.fb-start");
$('a.fancybox').fancybox({
width : 600,
height : 300,
fitToView : false,
autoSize : false,
type : 'ajax',
live : false,
ajax : { data : {'receiver_id' : $('#receiver_id').val(), 'subject' : $('#subject').val(), 'body': CKEDITOR.instances.body.getData()}}
});
});
用这个答案来形容它:解绑/销毁花式盒子 2 事件
相关文章:
- ajax请求的顺序总是不同的
- 从ajax请求中获取javascript对象
- Ajax请求文档就绪会导致jquery加载缓慢
- MockJax没有在JavaScript应用程序中发送对我AJAX请求的响应
- 正在传递JSONP标头's数据参数到另一个文件中的AJAX请求
- JavaScript代码未正确检查ajax请求
- "日期“;AJAX请求返回的类型值未定义
- 在等待ajax请求时显示微调器并禁用页面
- 跨域ajax请求
- Ajax请求返回空的数据字符串,但首先得到了正确的数据
- Javascript-如何让脚本与Ajax请求的数据一起运行
- ajax请求成功,但可以'我看不到我的数据
- 如何将给定的curl命令复制为jquery ajax请求
- 为什么我能够从javascript控制台发送跨域ajax请求
- 一台特定计算机的Ajax请求数据未定义/失败
- 获取ajax请求的请求头
- 原型Ajax请求参数为嵌套json
- 可以't从AJAX请求中筛选数据
- jQuery Mobile Collapse上的AJAX请求
- 暂停函数执行流程,直到ajax请求完成