这是我在这里的第一篇文章,我还没有想出要正确格式化我的帖子,但现在就去了。
所以基本上我只能直接指向php文件才能使我的代码工作。如果我尝试在我的控制器中调用一个方法,似乎什么也没发生。
我的JavaScript:
$(document).ready(function() {
$(".guide_button").click(function(){
var id = $(this).text();
var data = {};
data.id = id;
$.getJSON("/guides/hehelol", data, function(response){
$('#test').text(response.id);
});
return false;
});
});
我的标记:
<div id="content_pane">
<ul>
<li><a href="#" name="temp" class="guide_button">RL</a></li>
<li><a href="#">LG</a></li>
<li><a href="#">RG</a></li>
<li><a href="#">SG</a></li>
<li><a href="#">GL</a></li>
<li><a href="#">MG</a></li>
</ul>
</div>
<div class="description">
<h3>Description</h3>
<p id="test">This text area will contain a bit of text about the content on this section</p>
</div>
我的控制器:
<?php
class Guides extends CI_Controller {
public function Guides()
{
parent::__construct();
$this->load->helper('url');
$this->load->helper('form');
}
public function index()
{
$this->load->view('guides_view');
$title = 'Some title';
}
public function hehelol() //The controller I am desperatly trying to call
{
$id = $_GET['id'];
$arr = array ('id'=>$id);
echo json_encode($arr);
}
}
可能是我的控制器我做错了。因为代码只有在创建一个hehelol.php文件并且像这样直接引用它时才有效。
$.getJSON("hehelol.php", data, function(response){
$('#test').text(response.id);
});
任何知道我需要做什么才能让控制器正常工作的人?请帮忙! :)
答案 0 :(得分:0)
我只是将您的确切代码全部放在我的codeigniter应用程序中,它对我有用。意思是我使用了这个:...$.getJSON("/guides/hehelol",...
因为您要发出$_GET
请求,所以必须启用查询字符串。
在config.php文件中,确保此行设置为TRUE
:
$config['allow_get_array']= TRUE;