Ik heb het volgende script:


<html>
<head>
<script language="javascript">
fields = 10;
function addInput() {
if (fields != 1000) {
document.getElementById('text').innerHTML += "<tr><td>&nbsp;002:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr><br><tr><td>&nbsp;002:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr><br><tr><td>&nbsp;002:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr><br><tr><td>&nbsp;002:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr><br><tr><td>&nbsp;002:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr><br>";
fields += 5;
} else {
document.getElementById('text').innerHTML += "<br />Het maximum van 1.000 is bereikt.";
document.form.add.disabled=true;
}
}
</script>
<title></title>
</head>
<body>
<form name="form">
Titel: <input type='text' value='' size="75"/><br>
<table><tr><td>Taal 1:</td><td>Taal 2:</td></tr>
       <tr><td><input type='text' value='' /></td><td><input type='text' value='' /></td></tr>
</table>
Inhoud:<br>
<table><tr><td>001:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr>
<tr><td>002:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr>
<tr><td>003:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr>
<tr><td>004:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr>
<tr><td>005:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr>
<tr><td>006:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr>
<tr><td>007:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr>
<tr><td>008:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr>
<tr><td>009:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr>
<tr><td>010:</td><td> <input type='text' value='' /></td><td><input type='text' value='' /></td></tr>
</table>
<div id="text">
<table>

</table>
</div>
<input type="button" onclick="addInput()" name="add" value="Meer velden toevoegen" /></table></form></body>
</html>


Nu wil ik, dat er inplaats van alleen maar 002 er 011, 012 etc. komt te staan en dat deze ook als name komen te staan bij het veld. Hoe doe ik dit?

<form method="post" name="form">
	<table id="row">
	</table>
	<div id="max">
	</div>
	<button type="button" name="add" onclick="addInput(5)">Meer velden toevoegen</button>
	<input type="submit" value="Verzenden"><br />
</form>

<script language="javascript">
function addInput(x)
{
	if(fields < fieldmax)
	{
		fields += 1;
		if(fields < 10)			nummer = '00'+fields;
		else if(fields < 100)	nummer = '0'+fields;
		else 					nummer = fields;
		document.getElementById('row').innerHTML += '<tr><td>&nbsp;'+nummer+':</td><td><input type="text" name="links['+nummer+']" value="" /></td><td><input type="text" name="rechts['+nummer+']" value="" /></td></tr>';
	} 
	else
	{
		document.form.add.disabled=true;
		document.getElementById('max').innerHTML = 'Het maximum van '+fieldmax+' is bereikt.';
	}
	if(x > 1) addInput(x-1);
}

fields		= 0;
fieldmax	= 1000;
addInput(10);
</script>
Woow, bedankt SanThe! Werkt perfect!

Toevoeging op 04/12/2013 09:14:08:

Is er nu ook een makkelijke manier om alles in 1x in de tabel te zetten?

Momenteel is dit de query om de titel, talen etc. neer te zetten:


<?php
$id = rand(0,50000);
$titel = mysql_real_escape_string($_POST['titel']);
$taal_1 = mysql_real_escape_string($_POST['t1']);
$taal_2 = mysql_real_escape_string($_POST['t2']);
$leerj = mysql_real_escape_string($_POST['jaar']);
$vak = mysql_real_escape_string($_POST['vak']);
mysql_query("INSERT INTO woorden_lijsten(lijst_id,klas,gebruiker,titel,taal_1,taal_2,vak,leerjaar,inhoud_1,inhoud_2,first) VALUES ('$id','$klas','$user','$titel','$taal_1','$taal_2','$vak','$leerj','','','1')")or die(mysql_error());
?>


Toevoeging op 04/12/2013 09:30:51:

En nog een ding: Zodra ik extra rijen wil toevoegen worden de oude rijen verwijderd. Hoe blijven deze staan?
Welke oude?

Toevoeging op 04/12/2013 12:23:07:

Zo is ie iets gebruiksvriendelijker:

<form method="post" name="form">
	<table id="row">
	</table>
	<div id="max">
	</div>
	<button type="button" name="add" onclick="addInput(5)">Meer velden toevoegen</button>
	<input type="submit" value="Verzenden"><br />
</form>

<script language="javascript">
function addInput(x)
{
	if(fields < fieldmax)
	{
		fields += 1;
		if(fields < 10)			nummer = '00'+fields;
		else if(fields < 100)	nummer = '0'+fields;
		else 					nummer = fields;
		document.getElementById('row').innerHTML += '<tr><td>&nbsp;'+nummer+':</td><td><input type="text" name="links['+nummer+']" value="" /></td><td><input type="text" name="rechts['+nummer+']" value="" /></td></tr>';
		if(fields == fieldmax)
		{
			document.form.add.disabled=true;
			document.getElementById('max').innerHTML = 'Het maximum van '+fieldmax+' is bereikt.';
		}
	}
	if(x > 1) addInput(x-1);
}

fields		= 0;
fieldmax	= 1000;
addInput(10);
</script>


Ik bedoel dat zodra je op het knopje met Meer velden drukt de waardes uit de oude velden weggaan.
Ik Bump dit topic even omhoog.
De velden blijven ingevuld.
Echter ik krijg hier niet meer dan 194 rijen.
Geen foutmelding en eigenlijk ook geen idee waarom dat niet hoger gaat.


<form method="post" name="form">
	<table>
		<div id="row0">
		</div>
	</table>
	<div id="max">
	</div>
	<button type="button" name="add" onclick="addInput(5)">Meer velden toevoegen</button>
	<input type="submit" value="Verzenden"><br />
</form>

<script language="javascript">
function addInput(x)
{
	if(fields < fieldmax)
	{
		getid	= 'row'+fields;
		fields += 1;
		putid	= 'row'+fields;
		if(fields < 10)			nummer = '00'+fields;
		else if(fields < 100)	nummer = '0'+fields;
		else 					nummer = fields;
		document.getElementById(getid).innerHTML = '<tr><td>&nbsp;'+nummer+':</td><td><input type="text" name="links['+nummer+']" value="" /></td><td><input type="text" name="rechts['+nummer+']" value="" /></td></tr></div><div id="'+putid+'">';
		if(fields == fieldmax)
		{
			document.form.add.disabled=true;
			document.getElementById('max').innerHTML = 'Het maximum van '+fieldmax+' is bereikt.';
		}
	}
	if(x > 1) addInput(x-1);
}

fields		= 0;
fieldmax	= 1000;
addInput(10);
</script>
Je hebt wel het hele script overgenomen.
Bij mij werkt ie gewoon.
Dat is best vreemd... Hoe kan dat komen?
Laat het script eens zien.

Reageren