好吧,我正在嘗試使用codeigniter自動完成。我做了這個確切的方法,使用普通的HTML,JQuery和PHP工作。我試圖修改一下,使它與codeigniter一起工作,但它不工作。JQuery UI自動完成與codeigniter
jQuery的
$("#update-text").autocomplete({source:"<?php echo site_url('userProfile/autocomplete');?>",dataType:"json"});
在USERPROFILE控制器的功能自動完成
function autocomplete(){
// this takes the text field and whatever the user writes it autocompletes it.
//Every single place and event in the database should be displayed in this view in this format
$this->load->view("source", $data);
}
在PHP文件
<form method="post" action="#" name="updatePlanForm">
<div class="ui-widget">
<label for="update-text"></label>
<input type="text" id="update-text" name="updateText" value="What are you gonna do today?" onclick="removeText()"/>
</div>
<input type="button" class="small green button" value="Update Plan" name="updatePlanButton"/> <!-- once clicked JQuery sends a post to a controller send_plan and jquery will return the view -->
</form>
和最後源PHP文件的形式
<?php
$req = $_GET['term']; //first get the search keyword as get method
$arrResults = array('orange', 'apple', 'bannana');
$array = array_filter($arrResults, 'mycallback');
//filter the array containing search word using call back function
function mycallback($var)
{
global $req;
if(preg_match('/^'.$req.'/', $var))
{
return $var;
}
}
$array1 = array();
//filter null array
foreach($array as $arr => $val)
{
if(!empty($val))
{
$array1[] = $val;
}
}
//echo out the json encoded array
echo json_encode($array1);
?>
Thanx,我測試這個然後接受:) – Kay 2011-04-29 16:08:23
我試過了..沒有工作。也許我應該使用get方法? – Kay 2011-05-02 12:00:24
對不起,回覆晚了。什麼部分不起作用?使用螢火蟲跟蹤發佈的請求/迴應,並讓我知道發生了什麼。如果你想使用GET你必須使你的CI配置的查詢字符串,但GET和POST之間的差異不會成爲什麼導致的問題。 – 2011-05-13 01:41:34