codeigniter jquery post data data clean url

时间:2014-02-18 14:54:43

标签: jquery codeigniter url post

我使用codeginiter作为php框架,我想将jquery发布数据发送到我的一个方法.. 该方法在Inbox控制器内声明,其名称为read,例如:

public function read($data){
 //do somethin with $data
}

在我的javascript代码中我有这个

$.post('inbox/read', { somedatahere:value}, function.....);

当我使用此表单时,我收到了这个帖子网址www/inbox/read?somedatahere=value 但我真的很想这样...... www/inbox/read/value...

这是我怎样才能解决这个问题,但不是很花哨......

   $.post('inbox/read/' + value, {}, function.....);

3 个答案:

答案 0 :(得分:1)

首先,如果您发布jQuery帖子,则数据不在网址中,而是在请求正文中。

$.post('inbox/read', { url: value });

您可以按如下方式在控制器中访问此数据:

function read() {
   $url = $this->input->post('url');
}

确保加载正确的帮助程序和库。我不知道你需要加载哪一个,我认为是URL助手,但我不确定自从我使用Codeigniter以来已经有一段时间了。

答案 1 :(得分:0)

你可以尝试一下

post_url = '<?=base_url()?>' + 'inbox/read';
post_data = {
   'somedatahere': status,
};
$.post(post_url, post_data, function(e){
  // todo
}

答案 2 :(得分:0)

要扩充Dieter's answer,您还可以使用常规的ajax请求并更改网址

$.ajax({
    url: '/inbox/read/' + value,
    ...