【发布时间】:2016-11-14 04:31:42
【问题描述】:
美好的一天。请先看看我的剧本。
我的 JS
$(document).ready(function(){
$("#outlet").typeahead({
source: function(query, process) {
$.ajax({
url: '<?=base_url();?>graph/outletlists',
data: {outlets:$("#outlet").val()},
type: 'POST',
dataType: 'JSON',
success: function(data) {
process(data);
console.log(data);
}
});
},
minLength: 2
});
});
我的控制器
function outletlists()
{
extract(populateform());
$hasil = $this->modelmodel->showdata("SELECT Outlet from transaksi where outlet like '%".$outlets."%' group by Outlet");
echo json_encode($hasil);
}
和我的表格
<div class="form-group">
<label class="col-sm-3 control-label">Outlet</label>
<div class="col-sm-5">
<input type="search" id="outlet" class="form-control" placeholder="Search..." data-provide="typeahead" />
</div>
</div>
所以,我正在使用Bootstrap3-typeahead。从我上面的脚本中我得到了这个错误
来自console.log(data) 我已经得到了我想要的结果。所以我的问题是我看不到任何建议,然后我从firebug 收到了这个错误
return ~it.toLowerCase().indexOf(this.query.toLowerCase());
这是我输入AR时得到的结果
[{"Outlet":"K-AR3"},{"Outlet":"K-AR4"},{"Outlet":"K-ARN2"},{"Outlet":"K-ARN3"}]
任何帮助将不胜感激,抱歉我的英语不好。
我试着让它像http://twitter.github.io/typeahead.js/examples/的例子一样
var states = ['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California',
'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia', 'Hawaii',
'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana',
'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota',
'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire',
'New Jersey', 'New Mexico', 'New York', 'North Carolina', 'North Dakota',
'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode Island',
'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont',
'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming'
];
$(document).ready(function() {
$("#outlet").typeahead({
autoSelect: true,
minLength: 2,
delay: 400,
source: states
});
});
它有效。
来自firebug的结果
POST http://localhost:84/new_store/graph/outletlists 200 OK 375ms
jquery-....min.js(第 4 行)HeadersPostResponseHTMLCookies[{"插座":"K-AR3"},{"插座":"K-AR4"},{"插座":"K-ARN2"},{"插座":"K-ARN3" }]
TypeError: b.toLowerCase 不是函数
...on(a){var b=this.displayText(a);return~b.toLowerCase().indexOf(this.query.toLowe...
bootstr....min.js(第 1 行,第 2903 列
我尝试将我的bootstrap3-typeahead.js 更改为bootstrap3-typeahead.min.js 结束我的错误变成这样
TypeError: b.toLowerCase 不是函数 ...on(a){var b=this.displayText(a);return~b.toLowerCase().indexOf(this.query.toLowe...
【问题讨论】:
-
这里的“~it”是什么?
-
我不知道。它从萤火虫中出现
-
打印/控制台先记录你的'~it',然后应用到LowerCase(),逐步调试
标签: jquery ajax twitter-bootstrap codeigniter-3