ajax ci将post var值表示为另一个视图?

时间:2012-04-17 13:33:42

标签: ajax codeigniter jquery-mobile

我试图编写一个ajax POST来将值从一个ci视图发送到另一个ci视图。我已经在那里发现了很多帖子,但仍然没有能够做到正确,可能主要是因为他们展示了如何从表单控件发送数据,而我想从变量发送数据。在这个视图(编辑)中,我抓住了我要发送到jqm基本列表项的下一个视图(图库)的当前URL。

列表(在控制器上):

$control .= '<ul data-role="listview" data-inset="true" class="toGallery">';
$control .= '<li >';
$control .= '<a href="'. site_url() .'/mobilegallery/gallery/'.$x[0]->attributes()->indexI.'">[imgname.png]</a>';
$control .= '</li>';
$control .= '</ul>';

jQuery(在视图上):

$(document).bind('pageinit',function(event){
    var href = $(location).attr('href');

    $(".toGallery").live('tap',function(){

        $.ajax({
            type: "POST",
            url: "/mobilegallery/gallery",
            data: $('href').val(),
            success: function(data){
                var beforeUrl = href;
                alert(beforeUrl);
            }
        });

    });
});

在“图库”页面上,我想将网址设为变量供以后使用。我是否像上面那样成功创建了该变量,或者我是否在Gallery页面上获得了该值?

1 个答案:

答案 0 :(得分:0)

如果您想保留url变量以供以后使用(意味着后续页面请求),您只需将其作为自定义会话数据存储在控制器中:

// $your_url would be the URL sent from the view via the AJAX request
$this->session->set_userdata('your_url', $your_url);

现在它可以在任何这样的视图中使用:

<?php echo $this->session->userdata('your_url'); ?>