SOB22
27-09-2004, 14:47
hallo,
ich habe ein JavaScript Funktion die das Land eines Formulars überprüft. Wenn das Land in der EU ist wird ein neues Feld im Formular angezeigt. Das funktioert auch wunderbar, aber leider nur im Firefox, Opera und Netscape aber nicht im IE.
hier mal die Funktion:
function land(id)
{
elem = document.getElementById(id).value;
element = document.getElementById("ust_id").style;
<?
$laender_europa = array('Albanien','Andorra','Armenien','Belgien','Bosnien-Herzegowina','Bulgarien','Dänemark',
'Deutschland','Estland','Faröer','Finnland','Frankreich','Georgien','Griechenland',
'Großbritanien','Irland','Island','Italien','Kroatien','Lettland','Liechtenstein',
'Litauen','Luxemburg','Malta','Mazedonien','Moldawien','Niederlande','Norwegen','Österreich',
'Polen','Portugal','Restjugoslawien','Rumänien','Rußland','San Marino','Schweden',
'Schweiz','Spanien','Slowakei','Slowenien','Tschechien','Türkei','Ukraine','Ungarn',
'Vatikan','Weißrußland','Zypern');
?>
if(elem == "Belgien" || elem == "Dänemark" || elem == "Deutschland" || elem == "Estland" || elem == "Griechenland" ||
elem == "Finnland" || elem == "Frankreich" || elem == "Irland" || elem == "Italien" || elem == "Lettland" ||
elem == "Litauen" || elem == "Luxemburg" || elem == "Malta" || elem == "Niederlande" || elem == "Österreich" ||
elem == "Polen" || elem == "Portugal" || elem == "Schweden" || elem == "Slowakei" || elem == "Slowenien" ||
elem == "Spanien" || elem == "Tschechien" || elem == "Ungarn" || elem == "Großbritanien" || elem == "Zypern")
{
var eu = 1;
}
if(eu == 1)
{
element.visibility = "visible";
element.display = "table-row";
}
if(eu != 1)
{
element.visibility = "hidden";
element.display = "none";
}
}
und hier der ausschnitt im formular
<tr bgcolor="#E1E1E1" id="ust_id"';
if (empty($is_eu)) echo ' style="display:none;visibility:hidden;">';
echo '
<td align="left" width="140"><b>» Ust-ID:</b></td>
<td><input type="text" name="reg_ust" value="' . $_POST['reg_ust'] . '" id="reg_ust onfocus="
on_focus(\'#F6F6F6\', \'reg_ust\')" onblur="on_focus(\'#FFFFFF\', \'reg_ust\')" class="textfelder_gross"></td>
</tr>
im IE hat er irgendein Problem an dieser Stelle
if(eu == 1)
{
element.visibility = "visible";
element.display = "table-row";
}
er geht hier nicht rein. wenn ich ein alert rein setzte gibt er es nicht aus, wech ich die abfrage leere und nur das alert rein setze gibt es das alert?!
hat jemand eine idee woran das liegen könnte
Gruß
Tim
ich habe ein JavaScript Funktion die das Land eines Formulars überprüft. Wenn das Land in der EU ist wird ein neues Feld im Formular angezeigt. Das funktioert auch wunderbar, aber leider nur im Firefox, Opera und Netscape aber nicht im IE.
hier mal die Funktion:
function land(id)
{
elem = document.getElementById(id).value;
element = document.getElementById("ust_id").style;
<?
$laender_europa = array('Albanien','Andorra','Armenien','Belgien','Bosnien-Herzegowina','Bulgarien','Dänemark',
'Deutschland','Estland','Faröer','Finnland','Frankreich','Georgien','Griechenland',
'Großbritanien','Irland','Island','Italien','Kroatien','Lettland','Liechtenstein',
'Litauen','Luxemburg','Malta','Mazedonien','Moldawien','Niederlande','Norwegen','Österreich',
'Polen','Portugal','Restjugoslawien','Rumänien','Rußland','San Marino','Schweden',
'Schweiz','Spanien','Slowakei','Slowenien','Tschechien','Türkei','Ukraine','Ungarn',
'Vatikan','Weißrußland','Zypern');
?>
if(elem == "Belgien" || elem == "Dänemark" || elem == "Deutschland" || elem == "Estland" || elem == "Griechenland" ||
elem == "Finnland" || elem == "Frankreich" || elem == "Irland" || elem == "Italien" || elem == "Lettland" ||
elem == "Litauen" || elem == "Luxemburg" || elem == "Malta" || elem == "Niederlande" || elem == "Österreich" ||
elem == "Polen" || elem == "Portugal" || elem == "Schweden" || elem == "Slowakei" || elem == "Slowenien" ||
elem == "Spanien" || elem == "Tschechien" || elem == "Ungarn" || elem == "Großbritanien" || elem == "Zypern")
{
var eu = 1;
}
if(eu == 1)
{
element.visibility = "visible";
element.display = "table-row";
}
if(eu != 1)
{
element.visibility = "hidden";
element.display = "none";
}
}
und hier der ausschnitt im formular
<tr bgcolor="#E1E1E1" id="ust_id"';
if (empty($is_eu)) echo ' style="display:none;visibility:hidden;">';
echo '
<td align="left" width="140"><b>» Ust-ID:</b></td>
<td><input type="text" name="reg_ust" value="' . $_POST['reg_ust'] . '" id="reg_ust onfocus="
on_focus(\'#F6F6F6\', \'reg_ust\')" onblur="on_focus(\'#FFFFFF\', \'reg_ust\')" class="textfelder_gross"></td>
</tr>
im IE hat er irgendein Problem an dieser Stelle
if(eu == 1)
{
element.visibility = "visible";
element.display = "table-row";
}
er geht hier nicht rein. wenn ich ein alert rein setzte gibt er es nicht aus, wech ich die abfrage leere und nur das alert rein setze gibt es das alert?!
hat jemand eine idee woran das liegen könnte
Gruß
Tim
