[英]Opening Jquery fancybox from a function
我似乎在任何地方都找不到这个问题的答案,所以我在这里问。 我已经像这样成功地使用了fancybox:
$("#editor").fancybox({
'width' : 1000,
'height' : 600,
'autoDimensions' : false,
'autoScale' : false,
'ajax' : {
type : "POST",
data : varstring
}
})
现在的问题是,由于新的需要,varstring必须包含应打开fancybox窗口的每个链接的唯一数据。 我描绘的方式是这样的:
function openEditor(elementid,sid,pid,gid){
$("#"+elementid).fancybox({
'width' : 1000,
'height' : 600,
'autoDimensions' : false,
'autoScale' : false,
'ajax' : {
type : "POST",
data : 'varstringnotimplemented'
}
});
//$("#"+elementid).trigger('click');
return false;
}
它不起作用,如果我取消注释触发器,则会得到:
uncaught exception: Syntax error, unrecognized expression: #
即使我设法使此工作正常进行,也很难做到吗?
谢谢
最好传递实际对象而不是id。
function openEditor(element,sid,pid,gid){
var $element = $(element);
var dataString = '??';
var ajaxSettings = {
type : "POST",
data : dataString
};
$element.fancybox({
'width' : 1000,
'height' : 600,
'autoDimensions' : false,
'autoScale' : false,
'ajax' : ajaxSettings
});
$element.trigger('click');
return false;
}
链接将是
<a href="javascript:void(0);" onclick="openEditor(this,'some','other','params')">text</a>
如果通过href传递实际对象,则无法传递,可以通过onclick传递
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.