Dynamische Input-Box
Axel
- javascript
Hallo,
kann mir jemand mal auf mein Code schauen, und mir sagen, warum das nicht funktioniert?
<html>
<head><title></title>
<script type="text/javascript">
function Add ()
{
var a1 = document.createElement('input');
a1.name = 'a1';
document.getElementById('User').appendChild(a1);
}
function Del ()
{
var a1= document.getElementById('User').getElementById('a1');
a1.parentNode.removeChild(a1);
}
</script>
</head>
<body>
<formular id="form1">
<input type="button" value="Append" onclick="Add()">
<input type="button" value="Remove" onclick="Del()">
<div id="User">
</div>
</formular>
</body>
</html>
Es soll nur eine Inputbox eingefügt und gelöscht werden können. Leider funktioniert nur beim Einfügen. Beim Löschen gibt es "Das Objekt unterstützt diese Eigenschaft oder Methode nicht."
Vielen Dank und Gruß
Axel
hi,
Beim Löschen gibt es "Das Objekt unterstützt diese Eigenschaft oder Methode nicht."
Weil du überhaupt nicht mit dem Objekt arbeitest, mit dem du zu arbeiten glaubst - du wendest
var a1= document.getElementById('User').getElementById('a1');
a1.parentNode.removeChild(a1);
letztendlich auf null an, weil dir getElementById('a1') leider kein Element liefern kann, denn du hast keins mit dieser ID.
gruß,
wahsaga
hi,
Beim Löschen gibt es "Das Objekt unterstützt diese Eigenschaft oder Methode nicht."
Weil du überhaupt nicht mit dem Objekt arbeitest, mit dem du zu arbeiten glaubst - du wendest
das ist mir soweit schon klar ;-)
var a1= document.getElementById('User').getElementById('a1');
a1.parentNode.removeChild(a1);letztendlich auf null an, weil dir getElementById('a1') leider kein Element liefern kann, denn du hast keins mit dieser ID.
die function:
[code lan=javascript]
function Add ()
{
var a1 = document.createElement('input');
a1.name = 'a1';
document.getElementById("User").appendChild(a1);
}
[/code]
legt eine Input-Box an. Mit a1.name = 'a1' soll hier der name(id) zugewiesen werden. Auch mit a1.setAttribute('id', 'a1'); funktioniert nicht. Warum?
Du könntest fielleicht auch einen Tipp geben, wie das gemacht werden soll?
Problem gelöst. So geht's:
[code]
function Add ()
{
var a1 = document.createElement('input');
a1.setAttribute('id', 'a1');
document.getElementById("User").appendChild(a1);
}
function Del ()
{
var a1 = document.getElementById('a1');
document.getElementById('User').removeChild(a1);
}
[code]
hi,
die function:
function Add ()
{
var a1 = document.createElement('input');
a1.name = 'a1';
document.getElementById("User").appendChild(a1);
}
> legt eine Input-Box an. Mit a1.name = 'a1' soll hier der name(id) zugewiesen werden.
name != id
> Auch mit a1.setAttribute('id', 'a1'); funktioniert nicht. Warum?
setAttribute ist auch vollkommen unnötig.
a1.id = "xyz";
gruß,
wahsaga
--
/voodoo.css:
#GeorgeWBush { position:absolute; bottom:-6ft; }