我需要一些关于jQuery自动完成的帮助。
基本上,我想分割两个HTML元素之间返回的每组数据。这是我的工作代码,它只返回一个元素中的整个数据:
var autocomp = jQuery.noConflict();
autocomp(document).ready(function() {
var aTags = ["ask<####>1","always<####>2", "all<####>3", "alright<####>4", "one<####>5", "foo<####>6", "blackberry<####>7", "tweet<####>8","force<####>9", "westerners<####>10", "sport<####>11"];
autocomp('#category').autocomplete({
source: aTags,
open: function (e, ui) {
var acData = autocomp(this).data('ui-autocomplete');
acData
.menu
.element
.find('li')
.each(function () {
var me = autocomp(this);
var keywords = acData.term.split(' ').join('|');
me.html(me.text().replace(new RegExp("(" + keywords + ")", "gi"), '<b>$1</b>'));
});
}
});
});
HTML:
<div>
<input type='text' name="category" id="category" >
</div>
<p class="a">You selected id: <span id="results"></span></p>
现在,我要做的是仅显示<####>
中的第一部分(category
之前)和results
中的第二部分。
所以我想得到:
category value = 'ask'
results value = '1'
这是JSFiddle。
答案 0 :(得分:1)
我建议你以对象数组的格式更改aTags数组。如果需要,这可以自动完成。
摘录:
<link href="http://code.jquery.com/ui/1.11.3/themes/smoothness/jquery-ui.css" rel="stylesheet"/>
<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="http://code.jquery.com/ui/1.11.3/jquery-ui.js"></script>
<div>
<input type='text' name="category" id="category" >
</div>
<p class="a">You selected id: <span id="results"></span></p>
&#13;
{{1}}&#13;