Mit Javascript in <input> "Value" schreiben

Nikke123

Mitglied
Hallo Leute,

Ich möchte gerne per Javascript die Value eines input Feldes manipulieren, was aber mit dem folgenden nicht klappt.

PHP:
<input type='hidden' name='anzahl[]' id='".$blumen_array['id']."'></input>

und das ist der wichtige Teil meines Javascripts.

PHP:
document.getElementById(postid).value = postidthen;

Die Funktion in der das steht, wird mit $blumen_array['id'] als Parameter aufgerufen. Die ID wird somit in der variable "postid" gespeichert.

Wäre echt hammer, wenn ihr mir helfen könntet.
MFG
Niklas
 
push.
Sry sowas mache ich eigentlich nicht, aber nach 3 Stunden rumprobieren an etwas so eigentlich trivialem habe ich langsam den Kaffee auf... ^^
 
Aus deinen paar Codeschnippsel lässt sich nicht wirklich viel rauslesen....

Wo definierst du denn "postid"?

Wann wird dieser Value-Change aufgerufen?
 
Zuletzt bearbeitet:
Also der Aufruf von Value Change funktioniert. Denn diese Funktion macht auch noch eine Menge anderer Dinge, die funktionieren. postid ist wie bereits gesagt ein Parameter der an die Funktion mitübergeben wird und soll die "id" des inputfeldes beinhalten in dem der value wert verändert werden soll.
 
Das klappt leider auch nicht. Hier mal der Aufruf meine gesamten relevanten Codes:
Aufruf der Funktion(en):
PHP:
<div onclick='minus(\"".$blumen_array['name']."\", ".$blumen_array['groeße'].", \"".$blumen_array['id']."\");'>-</div>
					<div id=\"".$blumen_array['name']."\">0</div>
					<div onclick='plus(\"".$blumen_array['name']."\", ".$blumen_array['groeße'].", \"".$blumen_array['id']."\");'>+</div><br>

Die Funktion:
PHP:
function plus(id, size, postid){
		var anzahlDiv = document.getElementById(id);
		var anzahl = parseInt(anzahlDiv.innerHTML);
		anzahl += 1;
		anzahlDiv.innerHTML = anzahl;
		k += size;
		document.getElementById("fortschritt").style.width = k;
		if(k == check){
			alert("Der Kasten ist voll");
		} else if(k > check){
			alert("Der Kasten ist zu voll");
		}
		var postidnowunparsed = document.getElementById(postid);
		var postidnow =parseInt(postidnowunparsed.innerHTML);
		var postidthen = postidnow + 1;
		document.getElementById(postid).innerHTML = postidthen;
		}
(Die selbe gibt es nochmal mit minus ;)

Und hier das Hidden Input:
PHP:
<input type='hidden' name='anzahl[]' id=\"".$blumen_array['id']."\" value=\"0\"></input>
 
Hab es gelöst! Es muss wie folgt in der Funktion oben sein:
PHP:
var postidnowunparsed = document.getElementById(postid);
		var postidnow =parseInt(postidnowunparsed.value);
		var postidthen = postidnow - 1;
		document.getElementById(postid).value = postidthen;
Zuvor war dort parseInt(postidnowunparsed.innerHTML! Das ist natürlich quatsch...
 
Zurück