Avatar billede kbonline Nybegynder
04. februar 2007 - 00:26 Der er 3 kommentarer og
1 løsning

Tilføj tekstfelt eller filsendingsfelt

Hvordan får jeg det til at virke så den også kan tilføje et tekstfelt?
Lige nu kan man kun tilføje en filsending :-(
Man skal også kunne vællge at slette den sidste tekst eller fil.

--------------

<!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="keywords" content="roenving,http://exp.dk/spm/666830">
<meta name="Generator" content="Microsoft FrontPage 5.0">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
function addRow(elm){
  var tb = getParent(elm,"tbody");
  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[i].value = "";
  }
  var submitRow = getParent(elm, "tr");
  tb.insertBefore(nyTr,submitRow);
}
function deleteRow(elm){
  var tb = getParent(elm,"tbody");
  var trs = tb.getElementsByTagName("tr");
  if(3>trs.length)
    return;
  tb.removeChild(trs[trs.length-2]);
}
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" enctype="multipart/form-data">

<table width="200" border="1">
  <tr>
    <td>&nbsp;</td>
    <td><input type="file" name="F1" size="20"></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td><textarea rows="8" name="S1" cols="51"></textarea></td>
  </tr>
  <tr>
    <td>
    <input name="addfield" type="button" value="tilføj foto" onclick="addRow(this);return false;" style="width: 150"><input name="addfield1" type="button" value="tilføj tekst" onclick="addRow(this);return false;" style="width: 150"><br>
    <input name="deletefield" type="button" value="Slet sidste foto" onclick="deleteRow(this);return false;" style="width: 150"><input name="deletefield1" type="button" value="Slet sidste tekst" onclick="deleteRow(this);return false;" style="width: 150"></td>
    <td>
    <p align="center">
    <input name="submit" type="submit" value="Videre til næste side"></td>
  </tr>
</table>
</form>

</body>
</html>
Avatar billede esben85 Nybegynder
04. februar 2007 - 01:16 #1
Her var ihvertfald halvdelen af det du ville:

<!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="keywords" content="roenving,http://exp.dk/spm/666830">
<meta name="Generator" content="Microsoft FrontPage 5.0">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
function addRow(elm,type){
  var tb = getParent(elm,"tbody");
  var tr = tb.getElementsByTagName("tr")[0];
  var nyTr = document.createElement("input");
  nyTr.setAttribute("type",type);
  var submitRow = getParent(elm, "tr");
  tb.insertBefore(nyTr,submitRow);
}
function deleteRow(elm){
  var tb = getParent(elm,"tbody");
  var trs = tb.getElementsByTagName("tr");
  if(3>trs.length)
    return;
  tb.removeChild(trs[trs.length-2]);
}
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" enctype="multipart/form-data">

<table width="200" border="1">
  <tr>
    <td>&nbsp;</td>
    <td><input type="file" name="F1" size="20"></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td><textarea rows="8" name="S1" cols="51"></textarea></td>
  </tr>
  <tr>
    <td>
    <input name="addfield" type="button" value="tilføj foto" onclick="addRow(this,'file');return false;" style="width: 150"><input name="addfield1" type="button" value="tilføj tekst" onclick="addRow(this,'text');return false;" style="width: 150"><br>
    <input name="deletefield" type="button" value="Slet sidste foto" onclick="deleteRow(this);return false;" style="width: 150"><input name="deletefield1" type="button" value="Slet sidste tekst" onclick="deleteRow(this);return false;" style="width: 150"></td>
    <td>
    <p align="center">
    <input name="submit" type="submit" value="Videre til næste side"></td>
  </tr>
</table>
</form>

</body>
</html>
Avatar billede kbonline Nybegynder
04. februar 2007 - 08:37 #2
Hey - jeg synes nu ikke det gør andet end at skade det der var?
Jeg kan nu ikke tilføje noget som helst, og uanset hvilken sletteknap jeg trykker på, sletter den tekstfeltet?
Avatar billede kbonline Nybegynder
05. februar 2007 - 00:30 #3
Jeg har videre udviklet spørgsmål et lidt, så du kan se det her:
http://www.eksperten.dk/spm/760497
Avatar billede olebole Juniormester
06. februar 2007 - 15:31 #4
<ole>

Du kan sikkert indsætte et klonet <input type="file"> - men mon du har testet, om det virker? Det gør det formodentlig ikke, da netop dette felt er det potentielt farligste felt i HTML - og der normalt er ekstremt strenge restriktioner omkring scripting mod det. Det er yderst tvivlsomt, om du kan finde en forsøgt uploaded fil på serveren  ;o)

/mvh
</bole>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester