2
我使用jQuery中的find
方法在頁面上查找特定框。在jQuery中實時查找
我有其他的按鈕,創建新的盒子沒有頁面刷新。這些新盒子然後沒有找到與find
,這是一個問題。
我用:
$("fieldset#"+new_item_id).find("div.images").append(img);
,但我想怎樣也實現了live
方法。或者我應該使用on
還是其他?這個實時更新的東西是艱難的。
我使用jQuery中的find
方法在頁面上查找特定框。在jQuery中實時查找
我有其他的按鈕,創建新的盒子沒有頁面刷新。這些新盒子然後沒有找到與find
,這是一個問題。
我用:
$("fieldset#"+new_item_id).find("div.images").append(img);
,但我想怎樣也實現了live
方法。或者我應該使用on
還是其他?這個實時更新的東西是艱難的。
你將不得不在每個事件上調用一個函數來實現這一點。
function addImg(new_item_id, img){
$("fieldset#"+new_item_id).find("div.images").append(img);
}
對於那些已經存在的元素,您必須在頁面加載時調用它。對於每個添加的元素,您再次調用它。所以,你最終的東西,如:
$(function(){
$("fieldset[id]").each(function(){
var img = //how ever you find this image...
addImg($(this).attr('id'),img);
});
$('button').click(function(){
//some ajax call
$.ajax(
// what ever options you have for url, data etc etc.
success: function(response){ // assuming response is just the markup
var $el = $(response);
$('#content').append($el); // how ever you add this content - its probably NOT #content but you'll know that...
var img = //how ever you find this image...
addImg($el.attr('id'), img);
}
);
});
});
function addImg(new_item_id, img){
$("#"+new_item_id).find("div.images").append(img);
}
編輯 - 而不是甲肝功能找到的元素只是通過它...
$(function(){
$("fieldset[id]").each(function(){
var img = //how ever you find this image...
addImg($(this),img);
});
$('button').click(function(){
//some ajax call
$.ajax(
// what ever options you have for url, data etc etc.
success: function(response){ // assuming response is just the markup
var $el = $(response);
$('#content').append($el); // how ever you add this content - its probably NOT #content but you'll know that...
var img = //how ever you find this image...
addImg($el, img);
}
);
});
});
function addImg($newEle, img){
$newEle.find("div.images").append(img);
}
你不應該使用.live,這是過時的 – Sergio 2013-03-14 11:14:15
哦,那麼呢?謝謝我不知道 – Steeven 2013-03-14 11:14:42
'$(「fieldset#」+ new_item_id)'它超過合格,意味着沒有必要在它的前面添加'fieldset' – Val 2013-03-14 11:15:48