【发布时间】:2017-01-26 08:18:50
【问题描述】:
所以我在页面上有一个搜索栏 (/Search),当用户搜索某些内容时,它将对输入文本运行过滤器并使用过滤后的结果刷新页面。
如果有人搜索了“猴子”这个词,搜索结果的 URL 将是
/Search?searchBoxText=monkey
我正在尝试在不刷新页面的情况下实现这一点。
所以在我的 main.js 中我有:
$(function () {
$("#searchBox").keyup(function (e) {
var searchBoxText= $("#searchBox").val();
$.get("/Search?searchBoxText=" + searchBoxText, function (getHtml) {
$("#resultsDiv").html(getHtml);
});
});
});
问题是它在#resultsDiv 中显示整个页面,而我希望它只显示#resultsDiv。所以它会再次显示标题、搜索栏和按钮。
基本上我想在旧的#resultsDiv 中显示新结果(将在#resultsDiv 中),但我似乎无法将 .get() 限制为仅从结果页面中获取特定元素。
我试过了
$.get("/Search?searchBoxText=" + searchBoxText + " #resultsDiv", function (getHtml)$("#resultsDiv").html(getHtml).find("#resultsDiv");
还有其他类似的改动,但似乎没有任何效果。
谢谢!
【问题讨论】:
标签: javascript jquery html get