jQuery ajax 仅加载某个元素的文本

标签 jquery ajax

我正在尝试 $.load()来自其他页面的一些数据( foo.html )。假设我想要当前的<title>Current</title>与 foo 的标题相同,<title>Foo</title> 。 我正在做的是: $("title").load("foo.html title");

问题是我用 <title> 得到 foo 的标题标签: <title><title>Foo</title></title> 这显然行不通。 如何只获取 foo 标题的文本?

最佳答案

这感觉像是黑客,但它确实有效。

$("<div>").load("foo.html title", function(){
  $('title').text($(this).text());
});

尽管这是一个 hack,我还是制作了一个你可以使用的小插件。

$.fn.loadText = function(path, selector){
  var node = this[0].nodeName.toLowerCase();
  $("<div>").load(path + " " + selector, function(){
    $(node).text($(this).text());
  });
}

像这样使用它:

$('title').loadText("some path", 'title');

如果您想加载到 title 中,另一个标签的文本...

$('title').loadText("some path", 'div#foo');

关于jQuery ajax 仅加载某个元素的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12011143/

相关文章:

javascript - 如何将变量保存到 JSON 文件?

jquery - 我正在使用 jquery 下载一个 div 作为 pdf 图像。它正在下载,但图像中的文本看起来很模糊。有人请解释一下为什么吗?

javascript - 将 $.getJSON 的结果传递给同一个类的另一个方法

javascript - 如何从远程服务器获取jsonp?

c# - 您可以使用命名的 JSON 属性将复杂对象传递给 C# Controller 吗?

javascript - jQuery AJAX。返回值未定义?

javascript - jquery .html() 未获取最新选定值

javascript - jquery重置setInterval时间

javascript - Mootools 中的 outerWidth 等价物

javascript - 使用 javascript 在中间添加新的 Param URL