Php 自动完成:格式化结果
让我用我已经尝试过的代码片段再次尝试问这个问题 我正在尝试格式化Jquery自动完成,以包含每个数据源的标题并突出显示术语。我正在使用Codeigniter,我想最简单的方法可能是在我发回之前格式化它: JS:Php 自动完成:格式化结果,php,jquery,codeigniter,jquery-autocomplete,Php,Jquery,Codeigniter,Jquery Autocomplete,让我用我已经尝试过的代码片段再次尝试问这个问题 我正在尝试格式化Jquery自动完成,以包含每个数据源的标题并突出显示术语。我正在使用Codeigniter,我想最简单的方法可能是在我发回之前格式化它: JS: $( ".auto-search" ).autocomplete({ source: '/json/autocomplete_search', minLength: 2, }); $( ".auto-search" ).autocomp
$( ".auto-search" ).autocomplete({
source: '/json/autocomplete_search',
minLength: 2,
});
$( ".auto-search" ).autocomplete({
source: '/hotpepper/json/autocomplete_search2',
minLength: 2,
open: function(event, ui) {
$(".ui-autocomplete .ui-menu-item a").each(function (i) {
var row = $(this).html();
row=row.replace(/</g,"<");
row=row.replace(/>/g,">");
$(this).html(row);
});
},
});
PHP(Codeigniter)
公共函数自动完成搜索()
{
$term=$this->input->get('term');
//加载模型并得到结果
$this->load->model(“mymodel”);
$results1=$this->mymodel->search\u one($term);
$results2=$this->mymodel->search\u two($term);
//启动JSON字符串
$json='[';
//第一来源
如果($result1->num_rows()>0)
{
$json.='{“值”:“标题一”}';
foreach($results1->result\u array()作为$r1)
{
$result=str_replace($term,“”),$r1['title']);
$json.=',{“值”:“'.$result.''}”;
}
}
//第二来源
如果($result2->num_rows()>0)
{
如果($result1->num_rows()>0){$json.=',';}
$json.='{“值”:“标题二”}';
foreach($results2->result\u array()作为$r2)
{
$result=str_replace($term,“”,$r2['location');
$json.=',{“值”:“'.$result.''}”;
}
}
//关闭JSON字符串
$json.=']';
echo$json;
}`
不幸的是,我没有得到格式化的输出,相反,它实际上将单词和添加到输出中。以下是示例输出:
好的,我找到了一个方法。我是这样做的:
Javascript:
$( ".auto-search" ).autocomplete({
source: '/json/autocomplete_search',
minLength: 2,
});
$( ".auto-search" ).autocomplete({
source: '/hotpepper/json/autocomplete_search2',
minLength: 2,
open: function(event, ui) {
$(".ui-autocomplete .ui-menu-item a").each(function (i) {
var row = $(this).html();
row=row.replace(/</g,"<");
row=row.replace(/>/g,">");
$(this).html(row);
});
},
});
好吧,我找到了一个方法。我是这样做的:
Javascript:
$( ".auto-search" ).autocomplete({
source: '/json/autocomplete_search',
minLength: 2,
});
$( ".auto-search" ).autocomplete({
source: '/hotpepper/json/autocomplete_search2',
minLength: 2,
open: function(event, ui) {
$(".ui-autocomplete .ui-menu-item a").each(function (i) {
var row = $(this).html();
row=row.replace(/</g,"<");
row=row.replace(/>/g,">");
$(this).html(row);
});
},
});
是json吗?你试过解析它并在任何时候输出值吗?我想我不必解析它,因为我得到的输出与图像中的一样。老实说,在手动创建json字符串时,我不确定在哪里解析它。这个JavaScript片段是我正在使用的唯一JavaScript,它调用php函数,该函数返回echo并填充autocomplete?在对源代码进行排序之后,我可能会有一个解决方案。不要把希望寄托在这里,只是想帮忙。这是json?你试过解析它并在任何时候输出值吗?我想我不必解析它,因为我得到的输出与图像中的一样。老实说,在手动创建json字符串时,我不确定在哪里解析它。这个JavaScript片段是我正在使用的唯一JavaScript,它调用php函数,该函数返回echo并填充autocomplete?在对源代码进行排序之后,我可能会有一个解决方案。不要把希望寄托在这里,只是想帮点忙。好吧,你的解决方案更好,因为我的解决方案是让你编辑源文件。别忘了接受你的答案。好吧,你的解决方案更好,因为我的解决方案是你编辑源文件。别忘了接受你的答案。
$( ".auto-search" ).autocomplete({
source: '/json/autocomplete_search',
minLength: 2,
});
$( ".auto-search" ).autocomplete({
source: '/hotpepper/json/autocomplete_search2',
minLength: 2,
open: function(event, ui) {
$(".ui-autocomplete .ui-menu-item a").each(function (i) {
var row = $(this).html();
row=row.replace(/</g,"<");
row=row.replace(/>/g,">");
$(this).html(row);
});
},
});
$( ".auto-search" ).autocomplete({
source: '/json/autocomplete_search',
minLength: 2,
});
$( ".auto-search" ).autocomplete({
source: '/hotpepper/json/autocomplete_search2',
minLength: 2,
open: function(event, ui) {
$(".ui-autocomplete .ui-menu-item a").each(function (i) {
var row = $(this).html();
row=row.replace(/</g,"<");
row=row.replace(/>/g,">");
$(this).html(row);
});
},
});