如何更换我新元素添加到页面使用jQuery
-
27-09-2019 - |
题
下面是该方案...我有每个字段旁边一个复选框,我与“删除”的文字,让我通过jQuery,这是工作的罚款删除字段的jQuery更换页面加载。像这样...
$(".profile-status-box").each(function(){ $(this).replaceWith('<span class="delete">' + 'Delete' + '</span>') });
这个问题来的却是,页面加载后,我也给用户的选择动态地添加新的领域。新增加的领域,虽然有复选框,而不是删除链接,因为它们没有被替换的jQuery,因为他们正在初始页面加载后添加。
岂不等于可能取代添加到页面而不做刷新页面新元素的内容?如果没有,我总是可以有不同的标记取决于一个js和一个非JS两个模板,但我想avoind taht。
预先感谢。
解决方案
可以使用 .livequery()
插件时,是这样的:
$(".profile-status-box").livequery(function(){
$(this).replaceWith('<span class="delete">Delete</span>')
});
在匿名功能运行针对每个元素找到,并且每个新元件,因为它们可以增加选择器匹配。
其他提示
看一看这个库尔演示。它删除,并增加了像一个魅力的元素。
http://www.dustindiaz.com/basement/addRemoveChild.html
下面是如何:
首先,在(X)HTML是真正简单。 的的xHTML片段强>
<input type="hidden" value="0" id="theValue" />
<p><a href="javascript:;" onclick="addElement();">Add Some Elements</a></p>
<div id="myDiv"> </div>
隐藏输入元素只是给你一个机会,以动态地拨打电话,你可以下手。这一点,例如可以用PHP或ASP来设置。 onclick事件处理程序用于调用该函数。最后,div元素被设置并准备好接收附加的对自身(即天哪声音奇怪)一些的儿童。
Mkay,到目前为止那么容易。现在JS功能。
<强>的addElement Javascript函数强>
function addElement() {
var ni = document.getElementById('myDiv');
var numi = document.getElementById('theValue');
var num = (document.getElementById('theValue').value -1)+ 2;
numi.value = num;
var newdiv = document.createElement('div');
var divIdName = 'my'+num+'Div';
newdiv.setAttribute('id',divIdName);
newdiv.innerHTML = 'Element Number '+num+' has been added! <a href=\'#\' onclick=\'removeElement('+divIdName+')\'>Remove the div "'+divIdName+'"</a>';
ni.appendChild(newdiv);
}
如果你想,
<强> removeElement Javascript函数强>
功能removeElement(divNum){ 变种d =的document.getElementById( 'myDiv'); VAR olddiv =的document.getElementById(divNum); d.removeChild(olddiv); }
和这就是这一点。鲍勃你叔叔。
这是从本文/教程采取: http://www.dustindiaz.com/add-and-remove-html-elements-dynamically-with-javascript/
我刚刚得知这个自己。谢谢你的问题。
希望有所帮助。
<强> PK 强>