У меня есть задача, где мне нужно динамически добавить строку таблицы в HTML, где каждая строка имеет 2 текстовых поля, а последний элемент - это гиперссылка.Однако, когда я добавляю строку, гиперссылка последнего элемента должна быть заменена тегом <input>
.Как это можно сделать?Я
Я могу добавить строку, но не могу изменить последний элемент на тег <input>
, вот мой код:
HTML-файл
<html>
<head>
<title>Add row</title>
<script language=javascript type=text/javascript src="multiplerows.js"></script>
</head>
<body>
<table id="CPTbl">
<tr>
<td>
<input type="text" name="cpName" value="">
</td>
<td>
<input type="text" name="cpName1" value="">
</td>
<td>
<a href="samle.htm" View Image</a>
</td>
</tr>
<tr>
<td>
<input type="button" value="AddRow" name="AddRowData" onClick="add('CPTbl',1)">
<input type="button" value="Delete Row" name="DeleteAgencyCp" onClick="remove('CPTbl',1);">
</td>
</tr>
</table>
</form></body></html>
Мой скрипт такой, как показано ниже
function add(TableId,replicaterow){
var oMyTable = document.getElementById(TableId);
var oNewRow;
if (oMyTable.rows[replicaterow].style.display=="none"){
if(oMyTable.rows.length==(replicaterow+1)){
oMyTable.rows[replicaterow].style.display="";
}else{
oNewRow = oMyTable.rows[replicaterow].cloneNode(true);
oNewRow.style.display=""
ReInitRow(oNewRow,oMyTable.rows.length);
oMyTable.tBodies[0].appendChild(oNewRow);
}
}else{
oNewRow = oMyTable.rows[replicaterow].cloneNode(true);
ReInitRow(oNewRow,oMyTable.rows.length);
oMyTable.tBodies[0].appendChild(oNewRow);
}
}
function ReInitRow(oNewRow,rowlength){
var flg=true;
if (! oNewRow){return;}
for (var i = 0 ; i < oNewRow.childNodes.length ; i++){
if((oNewRow.childNodes[i].tagName == "INPUT") ||
(oNewRow.childNodes[i].tagName == "SELECT") ||
(oNewRow.childNodes[i].tagName == "TEXTAREA") ||
(oNewRow.childNodes[i].tagName == "textarea"))
{
oNewRow.childNodes[i].name = oNewRow.childNodes[i].name;
if((oNewRow.childNodes[i].tagName == "INPUT") &&
(oNewRow.childNodes[i].type == "text") ||
(oNewRow.childNodes[i].tagName == "TEXTAREA"))
{
oNewRow.childNodes[i].value = "";
}
if(oNewRow.childNodes[i].tagName == "SELECT" && !oNewRow.childNodes[i].multiple ){
oNewRow.childNodes[i].selectedIndex=0;
}
if(oNewRow.childNodes[i].id == "resetList")
{
oNewRow.childNodes[i].options.length=0;
}
if((oNewRow.childNodes[i].type=="hidden")){
flg=false;
oNewRow.childNodes[i].value="0";
}
}
ReInitRow(oNewRow.childNodes[i],rowlength);
}
}
Как заменить данные третьей таблицы (<a href="samle.htm" View Image</a>
) на <input type="file" name="photo" value="">
?
Заранее спасибо.