Tjah, hvor kan man læse om den slags finurligheder ...
-- det handler rigtig meget om DOM-ECMAscript binding og DOM-behandling, og jeg har kun fundet gode kilder til den slags ved at kigge på de eksempler, jeg er stødt ind i her på Eksperten, alle andre steder er det voldsomt fragmenteret (dog har min reference hjulpet mig godt !-)
-- hvis felterne godt må hedde det samme, kan du f.eks.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd"><html>
<head>
<title>Tilføj række i form/tabel</title>
<meta name="Generator" content="Stone's WebWriter 4">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
function addRow(elm){
var tb = document.getElementById("MinTBody");
var tr = tb.getElementsByTagName("tr")[0];
var nyTr = tr.cloneNode(true);
var inps = nyTr.getElementsByTagName("input");
for(i=0;inps.length>i;i++){
if(inps[i].type == "text")
inps.value = "";
}
var submitRow = getParent(elm, "tr");
tb.insertBefore(nyTr,submitRow);
}
function getParent(elm,TagName){
var parElm = elm.parentNode;
while(parElm.tagName.toLowerCase() != TagName.toLowerCase())
parElm = parElm.parentNode;
return parElm;
}
</script>
</head>
<body>
<form action="" method="post" name="myForm">
<table width="200" border="1">
<tbody id="MinTBody">
<tr>
<td><input name="firstname" type="text"></td>
<td><input name="lastname" type="text"></td>
<td><input name="pay" type="checkbox" value="payed"></td>
</tr>
<tr>
<td><input name="addfield" type="button" value="Udvid form" onclick="addRow(this);return false;"></td>
<td><input name="submit" type="submit" value="OK"></td>
<td></td>
</tr>
</tbody>
</table>
</form>
</body>
</html>