【发布时间】:2016-06-20 21:09:18
【问题描述】:
我正在尝试使用 twitter 的 typeahead 优化下拉选择栏以进行 typeahead 自动完成。当我实现 twitter 的 typeahead 时,我无法保留用户选择的值或在刷新页面后键入它。此外,当我尝试提交我正在处理的表单时,它似乎从未记录为值字段。
这是我的代码:
用于自动完成和建议的子字符串匹配器
var substringMatcher = function(strs) {
return function findMatches(q, cb) {
var matches, substringRegex;
matches = [];
substrRegex = new RegExp(q, 'i');
jQuery(function ($){
$.each(strs, function(i, str) {
if (substrRegex.test(str)) {
matches.push(str);
}
});
cb(matches);
});
};
};
提前输入
var Array = [];
jQuery(function ($) {
$(document).ready(function(){
$('#project').typeahead({
hint: true,
highlight: true,
minLength: 1
},
{
name: 'Projects',
source: substringMatcher(Array)
});
});
});
html
<c:forEach items="${Form.projectList}" var="val">
<script type="text/javascript">
var Projects = "${val.project}";
Array.push(Projects);
</script>
</c:forEach>
<div id="the-basics">
<input id = "project" class="typeahead" type="text" placeholder="Projects">
</div>
谁能给我任何关于如何解决这个问题的建议?
【问题讨论】:
标签: javascript html jsp typeahead.js twitter-typeahead