0

我在尝试调用特定控制器/方法时遇到问题。我正在尝试打电话myController/myMethod,但我$_POST只是被张贴到myController。我认为$_POST无法正常工作的原因是由于以下代码:

<script type="text/javascript">
$(document).ready(function() {          
    var $body = $('body'),
        $content = $('#content'),
        $form = $content.find('#loginform');
        $("input").uniform();       
        $form.wl_Form({
            status:false,
            onBeforeSubmit: function(data){
                $form.wl_Form('set','sent',false);
                if(data.username && data.password){
                    document.forms[0].submit();  // PROBLEM HERE
                }else{
                    $.wl_Alert('Enter password','warning','#content');
                }
                return false;
            }                             
        });         
        <?php if ($error_msg != ""): ?>
           $.wl_Alert('<?php echo $error_msg; ?>','info','#content');
        <?php endif; ?>
});  
</script>

我认为正在发生的事情是,当data.username && data.password设置时,表单正在提交但没有达到我需要的正确方法。

我怎样才能修改上面的javascript,而不是提交表单[0],代码应该调用myController/myMethod?这是显示我试图调用的控制器和方法的表单代码:

<form name="login" action="<?php echo site_url(); ?>myController/myMethod" id="loginform" method="POST">
4

3 回答 3

0

代替

document.forms[0].submit();  // PROBLEM HERE

试试看会发生什么

document.login.action="<?php echo site_url(); ?>myController/myMethod";
document.login.submit();
于 2012-11-21T05:33:21.113 回答
0

你也可以这样试试…………

<form action="<?php echo ROOT_FOLDER ?>/controller/function_name" method="post">
       insert your elements
 </form>

当您提交时,它将转到您的控制器中的功能,在那里您可以使用 $_POST 访问您在表单中提交的元素......

于 2012-11-21T05:59:31.737 回答
0

尝试

<form name="login" action="<?php echo base_url(); ?>myController/myMethod" id="loginform" method="POST">

如果您使用 htaccess 删除了 index.php,或者

<form name="login" action="<?php echo base_url(); ?>index.php/myController/myMethod" id="loginform" method="POST"> 如果您启用了 index.php。

你是如何确定它发布到 myController 的?您是否在控制器的构造函数中放置了调试行或退出?
当您打印 $_POST 并退出时,您会得到什么输出myMethod

于 2012-11-21T18:21:10.400 回答