无法通过ajax操作控制器方法

时间:2013-07-17 17:42:05

标签: php ajax codeigniter

我正在尝试将数据发送回控制器的控制器,而不是传递给模型。

当我点击提交按钮(填写所有字段)时,我得到一个成功响应,触发确认下拉列表,但品牌/ save_new_brand()方法不会触发。我有print_r($ _ POST);死();只是为了确定但仍然没有。

请求中的路径是正确的,并且相同的方法是将方法调用视为重定向成功,因此它应该没问题。

这就是我所拥有的......

            $.ajax({
            url: "<?=sbase_url()?>admin/brands/save_new_brand",
            global: true,
            type: "POST",
            data: ({
                <?php 
                    foreach($languages as $lang): 
                        if($lang['language_status'] == 'SHOW'):
                            echo "'brand_name_" . $lang['language_id'] . "' : $('#brand_name_" . $lang['language_id'] ."').val(),";
                            echo "'description_" . $lang['language_id'] . "' : tinyMCE.get('description_". $lang['language_id'] . "').getContent(),";
                        endif;
                    endforeach; 
                ?>
                'brand_status'      : $('#brand_status :selected').val()
                //,'brand_country'      : $('#brand_country :selected').val()
            }),
            dataType: "html",
            async: true,
            beforeSend: function() {
                $('#submit_button').hide();
                $("#processing").show();
            },
            success: function(data){
                parent.$.fancybox.close();
                $("#processing").hide();
                $.prompt('Brand created!',{ show:'slideDown', opacity: 0.5, timeout:2000, overlayspeed:'fast', promptspeed:'fast' });
                $('#list_content').load('<?=sbase_url()?>admin/brands/list_all');
            },
            error: function(xhr,err){
                $("#processing").hide();
                alert("readyState: "+xhr.readyState+"\nstatus: "+xhr.status);
                alert("responseText: "+xhr.responseText);
            }

评论位是新添加的东西,当我发现这个问题时,我也复制了“成功”部分仅用于路径比较。感谢所有人的帮助。

编辑添加其所在的管理部分是https但是在localhost上,https被删除了,这是否会干扰ajax请求?

1 个答案:

答案 0 :(得分:-1)

尝试使用

url: "<?php echo base_url(); ?>admin/brands/save_new_brand",