gpt4 book ai didi

javascript - jQuery.validate 可能破坏了 Facebox 弹出窗口

转载 作者:行者123 更新时间:2023-11-28 10:27:59 26 4
gpt4 key购买 nike

我的 Facebox 弹出窗口包含一个带有提交按钮的表单。我还有第二个按钮来打开一个不相关的 Facebox 弹出窗口,该弹出窗口在我将 jQuery.validate 添加到项目之前正在运行。我需要在提交之前验证电子邮件和密码字段。

我应该补充一点,这些弹出窗口是通过外部 .html 文件加载的。这通过 AJAX 请求加载它们。

index.html 上,设置弹出窗口($k 等于 jQuery.noConflict());

$k('a[rel*=example_2]').facebox_1({
loading_image : '/images/loading.gif',
close_image : '/images/closelabel.gif'
});

点击链接即可打开上面的 Facebox:

<a href="login.html" title="Log In" rel="example_2" id='login'>Log In </a>

下面的所有内容都在login.html

验证:

$(function () {
$('form[name="login"]').validate({
rules: {
email: { required: true, email: true },
password: "required"
},
messages: {
email: "",
password: ""
}
});
});

形式:

<form name="login" method="post" action="login.aspx">

按钮不起作用

<a href="#" title="Register" onclick="showRegister()" ><img src="images/register.jpg" /></a>

Nick 帮助我将表格发布在 this帖子,但似乎损坏了另一个按钮。我在调试脚本时遇到问题,因为我不知道 Firebug 是否可以在外部请求(通过 XHR)页面中设置断点。

我尝试向刚刚调用 showRegister() 的损坏按钮添加一个单击处理程序,但这也不起作用。 showRegister() 简单调用 $('#linkFromIndexDotHtml').click();,它实际上是来自 index.html 的链接。我认为这可能是问题所在,但它之前就有效。

最佳答案

我遇到了同样的问题,并使用 http://old.nabble.com/Validation-and-Facebox-td22187264s27240.html 中的信息解决了它。

$.extend($.facebox, {
settings: {
dom_data: null,
dom: null,

...*在主声明中添加变量 dom 和 dom_data脸框

if (href.match(/#/)) {
var url = window.location.href.split('#')[0]
var target = href.replace(url,'')
$.facebox.settings.dom = target;
$.facebox.settings.dom_data = $(target).children();
$.facebox.reveal($(target).children().show(), klass)

...*这是在 fillFaceboxFromHref 中

最后,

$(document).bind('close.facebox', function() {
if($.facebox.settings.dom){
$($.facebox.settings.dom).append($.facebox.settings.dom_data);

$.facebox.settings.dom = null;
$.facebox.settings.dom_data = null;
}

...* 这是在文件的末尾

关于javascript - jQuery.validate 可能破坏了 Facebox 弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3868273/

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