2011-12-14 25 views
1

我使用jQuery验证插件包含在一个颜色框中。如果验证成功,我想关闭colorbox并打开第二个colorbox(表示感谢),然后将用户发送到其原始目的地。JavaScript,如果提交是真实的(使用colorbox和jquery验证)

脚本捕获用户的目标并将其放入一个变量,然后打开一个colorbox。用户可以通过四种不同的方式存在colorbox,单击该bock,单击右上角的x,单击关闭按钮或成功提交。然后他们继续前进。

我需要的东西就像一个提交成功,然后打开谢谢你的彩盒。我迄今为止所尝试的只是打破了一切。

$('#lookUpSubmit').unbind('click').click(function(){ 
    $form.submit(); 
}); 

$("#lookUpCancel").unbind('click').click(function(){ 
    $.colorbox.close(); 
}); 

$(document).bind('cbox_closed', function() { 
    window.location = destination_url; 
}); 

$form.validate({ 
    submitHandler: function(form) { 
     form.submit(); 
    }, 
//some stuff 
}); 
+0

如果创建一个http://jsfiddle.net与您的代码,我很乐意过目,并助阵。 – JesseBuesking 2011-12-14 21:02:32

+0

嘿,那有点漂亮。 http://jsfiddle.net/absynthe_minded_web_smith/Jk8sK/1/ – 2011-12-14 21:52:14

回答

0

de提交成功时会发生什么?你重定向到一个页面或什么?至于JavaScript是基于客户端的,你不会对服务器给你带来什么影响或任何影响。您可以在成功提交后重定向的网页上实施Thank You Popup!

+0

发生什么事是,当用户点击某个网站的某个部分时,我们弹出一个模式窗口,作为几个问题然后发送他们的方式。它只会吸引到我们网站其他部分的人,因为我们在这部分网站没有任何外部链接。 – 2011-12-14 21:53:58

0

您提供的信息有点含糊。你什么意思是“一切都打破了”?

你所描述的可能是由许多因素引起的:
$ form是实际在某处定义的,还是你的意思是使用$(form)?
您是否验证了您的解除绑定/绑定链正常工作?

 

    $('#lookUpSubmit').unbind('click').click(function(){ 
     alert("B2K Was Here!"); 
    }); 

提交表单将重新载入页面或重定向到动作url。您需要阻止提交。

$('#formid').submit(function(e) { 
    e.preventDefault(); 
    // validate here 
    if (valid) { 
    $.ajax({ 
     type: 'POST', 
     url: this.action, 
     data: $(this).serialize(), 
     success: function() { 
      // open thank you colorbox here 
     } 
    }); 
    } 
});