【发布时间】:2018-05-26 09:26:37
【问题描述】:
我现在一直在尝试这样做,但我不知道该怎么做。基本上我在下面有这个代码,它生成 li 元素并将它们附加到已经存在的 ul 中。
$(document.body).on("keyup", "", ".menuSearch", function (e) {
if (e.keyCode != 37 && e.keyCode != 38 && e.keyCode != 39 && e.keyCode != 40) {
$(".searchResults").html("");
var searchField = $(".menuSearch").val();
var expression = new RegExp(searchField, "i");
HidingShowingUlForSearch();
$.each(finalJsonForMenu, function (key, value) {
if (value.title.search(expression) != -1 || value.description.search(expression) != -1) {
$("#searchResults").append(
'<li class="list-group-item mickyMouseResultLi" style=" border:none; min-width: 95%;">' +
'<a target="_blank" href="' + value.url + '"</a>' +
'<p>' +
value.title + '</p>' + '</li>');
//+'<p style="color: #757373">' + value.description + '</p>'
}
});
}
});
这是这段代码生成的 HTML:
<ul class="list-group searchResults pre-scrollable mickyMouseUl" style="position: absolute; z-index: 13; border: 1px solid rgb(206, 206, 206); display: block;" id="searchResults">
<li class="list-group-item mickyMouseResultLi" tabindex="1" style=" border:none; min-width: 95%;">
<a target="_blank" href="testlink" <="" a="">
<p>APU/APIIT PAGOL</p>
</a>
</li>
<li class="list-group-item mickyMouseResultLi" tabindex="2" style=" border:none; min-width: 95%;">
<a target="_blank" href="testlink" <="" a="">
<p>APU B.Sc. Presentations</p>
</a>
</li>
<li class="list-group-item mickyMouseResultLi" tabindex="3" style=" border:none; min-width: 95%;">
<a target="_blank" href="testlink" <="" a="">
<p>APU Parking Guideline</p>
</a>
</li>
<li class="list-group-item mickyMouseResultLi" tabindex="4" style=" border:none; min-width: 95%;">
<a target="_blank" href="testlink" <="" a="">
<p>APU Documents</p>
</a>
</li>
<li class="list-group-item mickyMouseResultLi" tabindex="5" style=" border:none; min-width: 95%;">
<a target="_blank" href="testlink" <="" a="">
<p>APU Student Handbook</p>
</a>
</li>
<li class="list-group-item mickyMouseResultLi" tabindex="6" style=" border:none; min-width: 95%;">
<a target="_blank" href="testlink" <="" a="">
<p>APU B.Sc Presentations & EOS Interview/LCM Schedules - Management Console</p>
</a>
</li>
<li class="list-group-item mickyMouseResultLi" tabindex="7" style=" border:none; min-width: 95%;">
<a target="_blank" href="testlink" <="" a="">
<p>APU B.Sc Presentations & EOS Interview/LCM Schedules</p>
</a>
</li>
</ul>
现在它的工作方式也很好,但是在 li 生成之后,我必须使用 courser 指向并单击它们,而我需要一种方法,我可以使用箭头键和 enter 按钮访问新生成的 li。有什么建议?
【问题讨论】:
-
贴一些HTML,这段代码不太容易理解。
-
@Baro 刚刚添加了 HTML。我希望这现在清楚了
-
.on("keyup", "", ".menuSearch", function (e)应该是.on("keyup", ".menuSearch", function (e)? -
并没有什么不同,我之前已经尝试过了。我找到了解决方案,谢谢:)
标签: javascript jquery ajax web