JS + innerHTML

Programovacie jazyky, rady, poradňa...
ST1GD3R
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 250
Registrovaný: 20 apr 2009, 11:32
Bydlisko: Doma

JS + innerHTML

Príspevok od používateľa ST1GD3R »

Čauko :> Mám tu jeden problémik z JS a innerHTML. Chcel by som si spravit niečo takéto:

Kód: Vybrať všetko

<html>
<head>
<title></title>
<script language="javascript">
fields = 0;
var pokus;
function addInput() {
if (fields != -1) {
document.getElementById('text').innerHTML += "form"+ fields +"<input type=\"text\" name='bla"+fields+"' id='"+fields+"' value='"+pokus+"'/><br />";
pokus = document.getElementById(fields).value;
fields += 1;
} else {
document.getElementById('text').innerHTML += "<br />Blablablabla";
document.form.add.disabled=true;
}
}
</script>
</head>
<body>
<form method="POST" action="bla.php">
<input type="button" onclick="addInput()" name="add" value="Add input field" />

<div id="text">
</div>
<input type="submit" value="pošli">
</form>
</body>
</html>
Toto je kód ktorý mi postupne pridáva inputy ale ja chcem napr že pridám tri už im napíšem aj hodnoty...... a keď pridám ďalší chcem aby mi vo value ostalo to čo som tam napísal ale to sa mi akosika nedarí.Neni niečo čo by ich pridávalo bez refreshu? Alebo niečo kde by mi ostalo to value čiže to čo som tam predtým napísal?Predom dík.

ST1GD3R
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

Kód: Vybrať všetko

<html>
<head>
<title></title>
<script language="javascript">
fields = 0;
function addInput() {
  var div = document.getElementById('text');
  for(var i=0; i<3; i++){
    fields += 1;
    var input = document.createElement('input');
  	input.type='text';
  	input.value='vstup cislo '+fields;
  	input.name='bla[]';
  	div.appendChild(input);
  	div.appendChild(document.createElement('br'));
  }
}
</script>
</head>
<body>
<form method="POST" action="bla.php">
<input type="button" onclick="addInput()" name="add" value="Add input field" />

<div id="text">

</div>
<input type="submit" value="pošli">
</form>
</body>
</html>
ST1GD3R
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 250
Registrovaný: 20 apr 2009, 11:32
Bydlisko: Doma

Príspevok od používateľa ST1GD3R »

Aha super ide to ďakujem :>A dalo by sa neako že by mi pred každý ten form napísalo ešte form1 , form2 , form3 etc??
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

medzi riadky

Kód: Vybrať všetko

input.name='bla[]';
div.appendChild(input);
daj riadok

Kód: Vybrať všetko

div.appendChild(document.createTextNode('form'+fields+': '));
ST1GD3R
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 250
Registrovaný: 20 apr 2009, 11:32
Bydlisko: Doma

Príspevok od používateľa ST1GD3R »

Díky moc už to fachá ako má :>
Napísať odpoveď