2015-09-21 63 views
0

jQuery的可以讓你更新頁面的某個部分,如果它有一個ID多個領域:更新與jQuery.load()

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

我需要更新頁面的幾個部分(大約形式) 。我意識到我可以:

  • 每個區域呼叫加載一次我想更新,但這是瘋狂低效的。
  • 重組我如何處理事情,因此請將原始表單整理爲.load(...),然後重新附上我的舊錶單...但這樣做的習慣是將焦點狀態變爲亂七八糟。

我想我以後是一個很好的方式來下載頁面(作爲一個jQuery對象),然後交叉更新特定的部分。我假設這是現有的​​代碼的工作原理。但我該怎麼做呢?

+0

'#myDiv'將是從你的'url'中取出的相同元素,當你說出頁面的幾個部分時,我假設將會有多個'elements'具有唯一的'id'和相同的'元素'會出現在你給的'url'中。如果我的假設是錯誤的,請糾正我。如果我們看到一些例子,這將是很好的。 –

回答

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來代替它。

+0

這正是我在想什麼,但找不到代碼對於。其中之一> _ <謝謝! – Oli