Beste tweakers,
Ik zit met een (ja hoor, alwéér een cross-browser) probleempje.
Ik heb een <FORM METHOD="POST"> met daartussen een tabel met daarin één tekstveld (<INPUT TYPE="TEXT" NAME="theAnswer0">). Wanneer een gebruiker iets in deze box tikt wordt er automatisch via JavaScript een rij aan de tabel toegevoegd met eenzelfde tekstbox erin, maar dan met de NAME="theAnswer1", en daarin gebeurt hetzelfde, wanneer daarin wat wordt ingetikt, komt er weer een bij enz. enz.
Werkt allemaal perfect
In IE en zelfs in FireFox geen problemen!
Nu het volgende:
Wanneer ik de FORM submit, en ik lees via PHP de geposte waarden uit, krijg ik alleen die van m'n eerste tekstbox (theAnswer0 dus) in FireFox. Die andere tekstvelden stuurt ie gewoonweg niet mee!
In IE werkt het wel perfect en krijg ik netjes alle tekstvelden! Enig idee waar dat aan ligt en hoe ik dat op kan lossen?
hier de code:
en de javascript:
Thanx in advance!
- m0rdex
Ik zit met een (ja hoor, alwéér een cross-browser) probleempje.
Ik heb een <FORM METHOD="POST"> met daartussen een tabel met daarin één tekstveld (<INPUT TYPE="TEXT" NAME="theAnswer0">). Wanneer een gebruiker iets in deze box tikt wordt er automatisch via JavaScript een rij aan de tabel toegevoegd met eenzelfde tekstbox erin, maar dan met de NAME="theAnswer1", en daarin gebeurt hetzelfde, wanneer daarin wat wordt ingetikt, komt er weer een bij enz. enz.
Werkt allemaal perfect
Nu het volgende:
Wanneer ik de FORM submit, en ik lees via PHP de geposte waarden uit, krijg ik alleen die van m'n eerste tekstbox (theAnswer0 dus) in FireFox. Die andere tekstvelden stuurt ie gewoonweg niet mee!
In IE werkt het wel perfect en krijg ik netjes alle tekstvelden! Enig idee waar dat aan ligt en hoe ik dat op kan lossen?
hier de code:
code:
1
2
3
4
5
6
7
8
9
| <TABLE ID="antwoorden">
<tbody>
<TR>
<TD>
<INPUT TYPE="TEXT" ONKEYUP="DoType(0);" ID="theAnswer0" NAME="frmAnswer0" STYLE="width: 500px; border: #000000 1px solid; font-weight: bold;">
</TD>
</TR>
</tbody>
</TABLE> |
en de javascript:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
| <SCRIPT>
var tbody = document.getElementById("antwoorden").getElementsByTagName("tbody")[0];
var tcount = tbody.rows.length;
function DoAnswer(what) {
if (what == "add") {
tcount = tbody.rows.length;
theRow = document.createElement("TR");
theCol = document.createElement("TD");
theCol.innerHTML = "<INPUT TYPE=\"TEXT\" ID=\"theAnswer"+tcount+"\" ONKEYUP=\"DoType("+tcount+");\" NAME=\"frmAnswer"+tcount+"\" STYLE=\"width: 500px; border: #000000 1px solid; font-weight: bold; background-color: #F5FFFC;\">";
theRow.appendChild(theCol);
tbody.appendChild(theRow);
} else {
theRow = tbody.rows[tcount-1];
tbody.removeChild(theRow);
}
}
function DoType(theid) {
tcount = tbody.rows.length;
theBox = document.getElementById("theAnswer"+theid);
if (theBox.value != "") {
theBox.style.backgroundColor = "#FFFFFF";
} else {
theBox.style.backgroundColor = "#F5FFFC";
}
try {
if (theBox.value != "" && tcount == (theid+1)) {
DoAnswer('add');
} else if (document.getElementById("theAnswer"+(tcount-2)).value == "" && tcount == (theid+2)) {
DoAnswer('remove');
}
} catch (err) {
}
}
</SCRIPT> |
Thanx in advance!
- m0rdex