Hi!
ich habe wieder ein merkwürdiges Internet Explorer Problem...
Warum vergisst der Internet Explorer den Text, wenn auf die Dropdownbox mehr als 1 mal geklickt wird?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de" xml:lang="de">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title>Test</title>
<script type="text/javascript">
// <![CDATA[
var dummyOptions = new Array();
function createDummyOptions(obj){
var optgroups = obj.getElementsByTagName("optgroup");
var options;
var newEntry;
if(dummyOptions.length != optgroups.length){
for (var i = 0; i < optgroups.length; i++){
options = optgroups[i].getElementsByTagName("option");
newEntry = document.createElement("option");
newEntry.appendChild(document.createTextNode(options[0].text));
newEntry.value = options[0].value;
dummyOptions.push(newEntry);
}
}
}
function deleteDummyOption(obj){
var optgroups = obj.getElementsByTagName("optgroup");
var counter = 0;
var options;
for (var i = 0; i < optgroups.length; i++){
options = optgroups[i].getElementsByTagName("option");
counter += options.length;
if(options.length == 1){
obj.options[counter-1] = null;
}
}
}
function restoreDummyOptions(obj){
var optgroups = obj.getElementsByTagName("optgroup");
var counter = 0;
var options;
for (var i = 0; i < optgroups.length; i++){
options = optgroups[i].getElementsByTagName("option");
counter += options.length;
if(options.length == 0){
optgroups[i].appendChild(dummyOptions[i]);
alert(obj.options[counter].value + " " + obj.options[counter].text);
}
}
}
// ]]>
</script>
</head>
<body onload="createDummyOptions(document.forms[0].list)">
<form method="post" action="">
<p>
<select name="list" size="15" onclick="deleteDummyOption(this, 1); restoreDummyOptions(this);">
<optgroup label="Test">
<option value="test">TEST</option>
</optgroup>
</select>
</p>
</form>
</body>
</html>
Opera und Firefox sind nicht so vergesslich
Aline