2013-12-10 2 views
0

Я использую JQuery Colorbox для нескольких элементов на моем сайте, включая форму входа. Я отправляю форму с помощью JQuery Post, и все в порядке с этим, за исключением того, что я не могу перенаправить своих пользователей обратно в родительское окно после того, как форма была успешно завершена. Вот код, который я использую:JQuery Лайтбокс Close On Form Представление

// Submit button action 
$('#formButton').click(function() 
{ 
var logusername=$("#logusername").val(); 
var logpassword=$("#logpassword").val(); 
var logcheckbox = ($("#logcheckbox").is(":checked")) ? "checked" : "not checked"; 

if(logusernameok == 1 && logpasswordok == 1) 
{   
    $('.validation').html("").removeClass("validationError").removeClass("validationSuccess").addClass("validationSending"); 
    jQuery.post("php/login.php", { 
    username:logusername, 
    password:logpassword, 
    checked:logcheckbox 
    }, function(data, textStatus){ 
    if(data == 1){ 
     window.location.replace("events.php"); 
    } 
    else{ 
     $('.validation').html("").removeClass("validationSuccess").removeClass("validationSending").addClass("validationError"); 
    } 
    }); 
} 

Может кто-нибудь предложить, что использовать вместо «window.location.replace (» «);»?

+0

почему вы используете window.parent? AFAIK это необходимо только в дочернем окне (например, в реальном всплывающем окне). – Gotschi

+0

Форма находится во всплывающем окне лайтбокса - что я должен использовать вместо этого? – user2737457

+0

window.location.href = 'main-page.php' я думаю ... – Gotschi

ответ

0

Попробуйте сделать прослушиватель событий в форме, как это:

$("form").on("submit", function(event) { 
    var logusername=$("#logusername").val(); 
    var logpassword=$("#logpassword").val(); 
    var logcheckbox = ($("#logcheckbox").is(":checked")) ? "checked" : "not checked"; 

    if(logusernameok == 1 && logpasswordok == 1) 
    {   
    $('.validation').html("").removeClass("validationError").removeClass("validationSuccess").addClass("validationSending"); 
    jQuery.post("php/login.php", { 
    username:logusername, 
    password:logpassword, 
    checked:logcheckbox 
    }, function(data, textStatus){ 
    if(data == 1){ 
     window.navigate("events.php"); 
    } 
    else{ 
     $('.validation').html("").removeClass("validationSuccess").removeClass("validationSending").addClass("validationError"); 
    } 
    }); 
}); 
+0

Спасибо, но это тоже не сработало - я попытался объединить мои исходные коды вместе, и теперь он работает с этим - 'window.parent.location.replace (" home-page.php "); ' – user2737457