2012-12-20 95 views
2

我在一个页面中有两种形式,注册和登录。如果用户尝试在“register_username”字段中输入用户名,然后模糊,则ajax检查该用户名是否已被占用。这一切都正常工作。但我发现如果这个Ajax调用已经完成,然后你点击登录表单上的提交,它将重定向到php-ajax页面而不是form-proccess php页面。PHP,JQuery表单提交重定向到另一个页面

我使用Code-Ignitier作为PHP框架,JQuery作为JavaScript库,就是这样。任何额外的信息,我会尽力提供,如果我要求这样做。非常感谢你。

编辑: // Javascript代码:

$('#register_username').live('blur',function() { 
$.post('ajax/username_taken', {'register_username':$(this).val() }, 
function(result) { 
    if(result) { 
    $('#register_username').addClass('error'); 
    } 
    else { 
    $('#register_username').removeClass('error'); 
    } 
}); 
} 

// PHP代码

echo form_open('form/login',$form_attr); 
echo .... 
echo form_submit($submit_attr); 
echo form_close(); 
echo form_open('form/register',$form_attr); 
echo .... 
echo form_submit($submit_attr); 
echo form_close(); 

注: 这一切简化,形式其实都是不同的看法,只有注册有控制器

+1

你可以显示你的代码或问题的[jsFiddle](http://jsfiddle.net)? – AbstractChaos

+0

我会尽力做到这一点。编辑:这几乎是不可能的(据我所知)做这个工作jsfiddle,但我会编辑问题并添加实际代码示例 – Yaakov

+0

向我们显示您的JavaScript和表单代码。设置表单的动作或错误的按钮被点击可能会有一些问题。 –

回答

1

我是ju因为你没有提供太多的信息,所以你一定会猜测。看来,你的JavaScript将覆盖你的提交按钮的点击事件,以便尝试在function(result)加入,看看是否有什么变化:

$('submit_button_selector').unbind(); 

Ofcourse,改变$(“XXX”)与您的按钮选择的一部分,通常它应该是像$('#my_form).find(':submit')

它真的是一个盲目的和更多的信息会帮助很多。

+0

这没有奏效。你错过了什么细节?我知道这可能是一个令人困惑的问题,我也很困惑。如果你想要我添加一些东西,我会尽我所能 – Yaakov

+0

你能给我完整的JavaScript代码吗?你可以将它粘贴到http://hastebin.com/或其他东西上。 – 2012-12-20 19:37:32

+0

http://hastebin.com/gapicatevu.coffee – Yaakov

相关问题