javascript - .get() 和 .find() 用于搜索结果

标签 javascript jquery html get

所以我在页面上有一个搜索栏(/Search),当用户搜索某些内容时,它将对输入文本运行过滤器并使用过滤后的结果刷新页面。

如果有人搜索“monkey”这个词,搜索结果的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", 函数 (getHtml)

  • $("#resultsDiv").html(getHtml).find("#resultsDiv");

还有类似的其他改变,但似乎没有任何效果。

谢谢!

最佳答案

请尝试以下操作

$("#resultsDiv").html($(getHtml).filter("#resultsDiv"));

<强> Demo

关于javascript - .get() 和 .find() 用于搜索结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41869281/

相关文章:

javascript - 在对 Angular 线段中获取点的算法

javascript - 如何修复 body-parser 不解析 express NodeJS 中的 html 表单日期输入字段?

java - 如何从 HTML 表格中选定的行获取单元格值?

javascript - jquery 事件已记录。它是如何工作的?

javascript - ionic 跃迁不起作用

javascript - Firebase 对象返回 child_changed 为 DOM 元素的对象

javascript - 用于在一行中访问数组文本的正确 jQuery 语法

javascript - 获取最外层 div 元素(最高父元素)的 HTML

asp.net - Javascript DoEvents 等效吗?

javascript - 使用 css 以相同的方式对齐元素