Javascript 如何引用表中的元素
我需要帮助。我正试图找出以下问题:Javascript 如何引用表中的元素,javascript,html,function,Javascript,Html,Function,我需要帮助。我正试图找出以下问题: <script> var ct = 1; function new_bank() { ct++; var div1 = document.createElement('div'); div1.id = ct; // bank to delete extended form elements var delLink = '<a href="javascript:delIt('+ ct +')">delete</a>'; di
<script>
var ct = 1;
function new_bank()
{
ct++;
var div1 = document.createElement('div');
div1.id = ct;
// bank to delete extended form elements
var delLink = '<a href="javascript:delIt('+ ct +')">delete</a>';
div1.innerHTML =
document.getElementById("newbanktpl").innerHTML + delLink;
document.getElementById('newbank').appendChild(div1);
}
// function to delete the newly added set of elements
function delIt(eleId)
{
d = document;
var ele = d.getElementById(eleId);
var parentEle = d.getElementById('newbank');
parentEle.removeChild(ele);
findTotalA();
}
</script>
<!-- Template -->
<div id="newbanktpl">
<table>
<tr>
<td></td>
<td><textarea name="BankAccount[]"></textarea></td>
<td><input type="number" onblur="findTotalA()" name="Value[]"/></td>
<td><input type="number" name="Ownership[]" /></td>
<td>**ADD DELETED LINK HERE** </td>
</tr>
</table>
var-ct=1;
新银行的职能()
{
ct++;
var div1=document.createElement('div');
div1.id=ct;
//银行删除扩展表单元素
var delLink='';
div1.innerHTML=
document.getElementById(“newbanktpl”).innerHTML+delLink;
文件.getElementById('newbank').appendChild(第1部分);
}
//函数删除新添加的元素集
函数delIt(eleId)
{
d=文件;
var ele=d.getElementById(eleId);
var parentEle=d.getElementById('newbank');
父母移除儿童(ele);
findTotalA();
}
**在此处添加已删除的链接**
我想要的是在表中的delete函数-目前delete函数在newbanktpl之后,我想要在表中。。。在最后一个中,在此处添加已删除的链接 尝试向td添加id,然后可以在JS中使用它 在HTML中 整个函数应如下所示: 另外,我不知道你为什么要用这么短的名称调用变量来节省计算机的字节数,这是你的时间,对计算机没有任何影响,但会使你的代码更难理解。
- 为模板中的链接指定一个类
- 克隆模板
- 更新div的ID
- 将
功能分配给链接的delIt
onclick
- 为链接指定一个引用要删除的ID的
属性数据删除
- 在插入的最后一个库之后插入克隆
- 将克隆指定为新的“最后一个库”
var-ct=1;
var tmpl=document.getElementById(“newbanktpl”);
var lastBank=tmpl;
新银行的职能(){
var clone=tmpl.cloneNode(true);
clone.id=“银行”+ct;
ct++;
var delLink=clone.querySelector(“.delete_link”);
setAttribute(“数据删除”,clone.id);
delLink.onclick=delIt;
lastBank.parentNode.insertBefore(克隆,lastBank.nextSibling);
lastBank=克隆;
}
//函数删除新添加的元素集
函数delIt(){
var id=this.getAttribute(“数据删除”);
var ele=document.getElementById(id);
如果(ele==最后一个银行){
lastBank=ele.previouselement同级;
}
ele.parentNode.removeChild(ele);
//findTotalA();
}
#新银行TPL{
显示:无;
}
新建银行
这并没有添加表中的其他框:它只是添加了一个删除文本我知道我有以下错误的顺序你能帮我更正一下吗@rabbishukivar ct=1;函数new_bank(){ct++;var div1=document.createElement('div');div1.id=ct;//bank删除扩展表单元素var delLink='';div1.innerHTML=document.getElementById('newbanktpl')。innerHTML+delLink;document.getElementById('newbank')。appendChild(div1);document.getElementById('delete”)。href=“javascript:delIt('+ct+)”}
@Cos既然你还不理解这个解决方案,我建议你回到学习的座位上,了解一下JS是如何工作的。。添加了完整的示例以帮助您。这似乎对我不起作用。我刚刚尝试将其添加到我的代码中。您需要什么jQuery链接才能让它工作?然后在元素存在之前运行代码,可能在页面顶部。不需要jQuery。或者只需移动var tmpl=document.getElementById(“newbanktpl”)代码>在顶部的new_bank
功能中。
<table>
<tr>
...
<td><a href="#" id="delete">delete</a></td>
</tr>
</table>
...
document.getElementById("delete").href="javascript:delIt('+ ct +')";
...
var ct = 1;
function new_bank() {
ct++;
var div1 = document.createElement('div');
div1.id = ct;
document.getElementById("delete").href="javascript:delIt('+ ct +')";
document.getElementById('newbank').appendChild(div1);
}