gpt4 book ai didi

javascript - 从函数打开 Jquery fancybox

转载 作者:行者123 更新时间:2023-11-29 18:35:15 25 4
gpt4 key购买 nike

我似乎无法在任何地方找到这个问题的答案,所以我在这里问。我已经像这样成功地使用了 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 发送它

关于javascript - 从函数打开 Jquery fancybox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3915889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com