gpt4 book ai didi

javascript - 如何删除特定的文本区域字段?

转载 作者:行者123 更新时间:2023-11-30 09:03:00 24 4
gpt4 key购买 nike

我有一个基于 javascript 生成的动态表单。这是相关的 javascript:

function addRowToTable()
{

var tbl = document.getElementById('convention');
var lastRow = tbl.rows.length;
// if there's no header row in the table, then iteration = lastRow + 1
var iteration = lastRow;
var row = tbl.insertRow(lastRow);


// right cell
var cellRight = row.insertCell(0);

var el = document.createElement('textarea');
el.rows = '2';
el.cols = '80';
el.name = 'conventionSkill' + iteration;
el.size = 40;

var el2 = document.createElement('input');
el2.type = 'hidden';
el2.name = 'conventioni_alt';
el2.value = iteration;
el2.size = 40;


el.onkeypress = keyPressTest;
cellRight.appendChild(el);
cellRight.appendChild(el2);


}

function removeRowFromTable()
{
var tbl = document.getElementById('convention');
var lastRow = tbl.rows.length;
if (lastRow > 2) tbl.deleteRow(lastRow - 1);
}

HTML:

  <table id="convention">
<tr>
<td><label>Skill Descriptions:</label></td>
</tr>

<tr>
<td>
<textarea name='convention_54' rows='2' cols='80'>
text
</textarea></td>

<td><a href='javascript:void(0)' onclick='removeRowFromTable(54);'><font size=
'+1'>-</font></a></td>
</tr>

<tr>
<td>
<textarea name='convention_55' rows='2' cols='80'>
text2
</textarea></td>

<td><a href='javascript:void(0)' onclick='removeRowFromTable(55);'><font size=
'+1'>-</font></a></td>

<td><a href='javascript:void(0)' onclick='addRowToTable();'><font size=
'+1'>+</font></a></td>
</tr>
</table>

我喜欢添加功能,因为它只是添加了一个新的文本区域。但是,删除按钮从窗体底部向上删除。我怎样才能使 removeRowFromTable 删除特定的文本区域?例如,如果我想删除中间的一个文本区域,而不是表单中的最后一个。

感谢您的任何建议!

最佳答案

简而言之,您必须找到要删除的确切文本区域(可能通过 ID)。

但是,在您手动滚动 ID 枚举和 DOM 操作代码这条路走得太远之前,您可能需要看看 jQuery ( http://jquery.com/ )。 jQuery 通过其选择器机制非常容易地处理大量此类内容,并且可以让您免于在尝试自己执行所有这些 DOM 操作时可能遇到的许多跨浏览器问题。

你会在 SO 上发现很多关于 jQuery 的问题;例如,看看这个相关且简单的表操作是多么容易:

What is the best way to remove a table row with jQuery?

恕我直言,学习 jQuery 对我和我的团队来说极大地提高了 Javascript 的工作效率——我花时间在体验上是非常值得的。

关于javascript - 如何删除特定的文本区域字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7638360/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com