【问题标题】:Update multiple areas with jQuery.load()使用 jQuery.load() 更新多个区域
【发布时间】:2015-09-21 13:12:56
【问题描述】:

如果页面有 ID,jQuery 允许您更新页面的单个部分:

$('#myDiv').load('http://my/url/#myDiv');

我需要更新页面的几个部分(围绕表单)。我意识到我可以:

  • 在我想更新的每个区域调用一次 load,但这非常低效。
  • 重组我的工作方式,因此分离原始表单,.load(...) 整个页面并重新附加我的旧表单......但这有一个习惯与焦点状态搞乱。

我想我想要的是一种下载页面(作为 jQuery 对象)然后交叉更新特定部分的好方法。我假设现有的.load() 代码就是这样工作的。但是我该怎么做呢?

【问题讨论】:

  • #myDiv 将与从您的url 获取的元素相同,当您说页面的几个部分时,我假设会有多个elements 具有唯一的id并且相同的element 将出现在您提供的url 中。如果我的假设是错误的,请纠正我。如果我们能看到一些例子,那就太好了。。

标签: jquery jquery-load


【解决方案1】:

一种解决方案是使用$.get:

$.get('http://my/url/', function(response) {
    var $page = $(response);

    $("#myDiv1").replaceWith($page.find("#myDiv1"));
    $("#myDiv2").replaceWith($page.find("#myDiv2"));
});

需要注意的重要一点是,jQuery 将删除像 <html><body><header> 这样的元素,因此如果该元素是其中之一的直接后代,则可以使用 .filter 来查找它.

【讨论】:

  • 这正是我的想法,但找不到代码。那些日子之一>_
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-01
  • 2012-04-02
  • 1970-01-01
  • 2022-01-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多