Avatar billede sub_zero Nybegynder
11. januar 2004 - 21:00 Der er 22 kommentarer og
1 løsning

Skift af selected option i dropdown

Hey,

Jeg er rendt ind i et problem. Jeg har en form kaldet 'validerlinkform' hvori jeg har en dropdown-boks (select) kaldet 'hovedkategori-10' deri har jeg en option kaldet 'Trailere', som jeg vil lave selected

jeg har prøvet med: document.validerlinkform.getElementById('hovedkategori-10').Trailere.selected="selected"; - men det virker ikke.

Nogen der ved hvordan jeg kan løse det?

På forhånd tak!
Avatar billede jakobclausen Nybegynder
11. januar 2004 - 21:03 #1
hvad med:
document.validerlinkform.getElementById('hovedkategori-10').Trailere.selected="true" ??
Avatar billede sub_zero Nybegynder
11. januar 2004 - 21:06 #2
er hermed testet. virker ikke :/
Avatar billede grunken Nybegynder
11. januar 2004 - 21:07 #3
document.validerlinkform.hovedkategori-10.Trailere.selected="true";
Avatar billede sub_zero Nybegynder
11. januar 2004 - 21:10 #4
heller ingen held i det der..
Avatar billede sub_zero Nybegynder
11. januar 2004 - 21:19 #5
Her er koden bag det (det er også i PHP):
<?php
echo '<script language="javascript" type="text/javascript">';
echo 'var arr = [';
$result = mysql_query("SELECT * FROM hovedkategorier");
$i = 1;
while ($row = mysql_fetch_array($result)) {
    echo '["'.$row[navn].'", [';
    $x = 1;
    $result2 = mysql_query("SELECT * FROM kategorier WHERE hovedkategori = '$row[navn]'");
    while ($row2 = mysql_fetch_array($result2)) {
        echo '["'.$row2[kategori].'",';
        $l3 = "";
        $y = 1;
        $result3 = mysql_query("SELECT * FROM links WHERE kategori =  '$row2[kategori]'");
        while ($row3 = mysql_fetch_array($result3)) {
            if (mysql_num_rows($result3) != $y) {
                $l3 .= '"'.$row3[navn].'",';
            } else {
                if (mysql_num_rows($result2) != $x) {
                    $l3 .= '"'.$row3[navn].'"';
                } else {
                    $l3 .= '"'.$row3[navn].'"]]';
                }
            }
            $y++;
        }
        if ($l3 == "") {
            $l3 = '""]]';
        }
        if (mysql_num_rows($result) != $i) {
            echo '['.$l3.']],';
        } else {
            if (mysql_num_rows($result2) != $x) {
                echo '['.$l3.']],';
            } else {
                echo '['.$l3.']]';
            }
        }
        $x++;
    }
    $i++;
}
echo '];';

echo 'function createOpts(sel){';
    echo 'var s = new Array();';
    echo 'var num = 0, txt = "arr";';
    echo 'var ar = opt = null;';
    echo 'var n = sel.selectedIndex;';
    echo 'var args = createOpts.arguments.length;';
    echo 'for(var i=1;args>i;i++){';
        echo 's[i-1] = document.getElementById(createOpts.arguments[i]);';
        echo 'if(s[i-1]==sel)num=i;';
    echo '}';
    echo 'if(args>1){';
        echo 'if(s[num])sel = s[num];';
        echo 'else return;';
    echo '}';
    echo 'if(n==0&&args>1){';
        echo 'for(i=num;args>i+1;i++){';
            echo 's[i].length = 0;';
            echo 'opt = document.createElement(\'OPTION\');';
            echo 's[i].appendChild(opt);';
            echo 'opt.value = "";';
            echo 'opt.text = "\74-- Vælg --";';
        echo '}';
        echo 'return true';
    echo '};';
    echo 'for(i=0;num>i;i++){';
        echo 'txt+="["+(s[i].selectedIndex-1)+"][1]";';
    echo '}';
    echo 'ar = eval(txt);';
    echo 'sel.length = 0;';
    echo 'opt = document.createElement(\'OPTION\');';
    echo 'sel.appendChild(opt);';
  echo 'opt.value = "";';
  echo 'opt.text = "-- Vælg --";';
    echo 'for(i=0;ar.length>i;i++){';
        echo 'opt = document.createElement(\'OPTION\');';
        echo 'sel.appendChild(opt);';
        echo 'if(typeof ar[i] == \'object\'){';
          echo 'opt.value = ar[i][0];';
          echo 'opt.text = ar[i][0];';
        echo '}else{';
          echo 'opt.value = ar[i];';
          echo 'opt.text = ar[i];';
      echo '}';
    echo '}';
    echo 'if(args>num+2){';
        echo 'for(i=num+1;args-1>i;i++){';
            echo 's[i].length = 0;';
            echo 'opt = document.createElement(\'OPTION\');';
            echo 's[i].appendChild(opt);';
            echo 'opt.value = "";';
            echo 'opt.text = "\74-- Vælg --";';
        echo '}';
    echo '}';
echo '}';
echo '</script>';
?>

<form name="validerlinkform" method="post" action="validerlink.php" border="0">

<?php
$result = mysql_query("SELECT * from validerlink");
while ($row = mysql_fetch_array($result)) {
    list($addedYear,$addedMonth,$addedDay) = split('-',$row[added]);
    $addedstampeddate = mktime(12,0,0,$addedMonth,$addedDay,$addedYear);
    $added = date("d.m.Y",$addedstampeddate);
    $status  = "";
    if ($row[aktiver] == 0) {
        $status = "- aktiver";
    }
    echo '<tr bgcolor="f7f7f7">';
        echo '<td height="24" class="infoheadline"><div align="left"><input type="radio" name="link" value="'.$row[id].'"></div></td>';
        echo '<td height="24" class="infoheadline">'.$row[navn].'</td>';
        echo '<td height="24" class="infoboxtext">'.$added.'</td>';
        if ($row['kategoritype'] == 0) {
            echo '<td height="24"><select name="hovedkategori'.$row[id].'" class="infoboxtext" style="width: 150px" onChange="createOpts(this,\'hovedkategori'.$row[id].'\',\'underkategori'.$row[id].'\');"><option selected="selected">Hovedkategori</option></select></td>';
            echo '<td width="155" height="24"><div align="left"><select name="underkategori'.$row[id].'" class="infoboxtext" style="width: 150px"><option selected="selected">&lt;-- Vælg Hovedkategori</option></select></div></td>';
        } else {
            echo '<td height="24"><select name="hovedkategori-'.$row[id].'" class="infoboxtext" style="width: 150px" onChange="createOpts(this,\'hovedkategori'.$row[id].'\');"><option selected="selected">Hovedkategori</option></select></td>';
            echo '<td height="24"><div align="left"><input type="text" class="boxborder" value="'.$row[kategori].'" /></td>';
        }
        echo '<script language="javascript" type="text/javascript">createOpts(document.getElementById(\'hovedkategori'.$row[id].'\'));</script>';
        echo '<script language="javascript" type="text/javascript">document.validerlinkform.hovedkategori'.$row[id].'.'.$row[hovedkategori].'.selected="true";</script>';
        echo '<td height="24" class="infoboxtext"><em>'.$status.'</em></td>';
        echo '<td><input name="aktiver" type="button" class="boxborder" style="width: 50px" onClick=\'java script:window.location="validerlink.php?do=aktiver&id='.$row[id].'"\' value="Aktiver" /></td>';
        echo '<td><input name="vistilmelding" type="button" class="boxborder" style="width: 74px" onClick=\'java script:window.location="validerlink.php"\' value="Tilmelingsdata" /></td>';
    echo '</tr>';
}
unset ($result);
?>

Det sjove er at det er createOpts scriptet som laver fejl, når jeg har denne linje i scriptet.. (document.validerlinkform....) men hvis jeg fjerner den, så virker det fint nok... skal altså bare have den til at selecte det valgte, udfra databasen..
Avatar billede stingbat Nybegynder
11. januar 2004 - 21:24 #6
Prøv:
document.validerlinkform.getElementById('hovedkategori-10').value = 'Trailere';

Ellers må du finde den "manuelt" i listen og vælge via:
document.validerlinkform.getElementById('hovedkategori-10').selectedIndex = ... ;
(... erstattes af ID)
Avatar billede sub_zero Nybegynder
11. januar 2004 - 21:32 #7
den øverste virkede ikke,men den næste - hvordan finder jeg ID'et ?
Avatar billede stingbat Nybegynder
11. januar 2004 - 22:42 #8
Den første virker desværre kun ved <option value="Trailere">Trailere</option>

For at finde et bestemt ID, kan du gøre således:

objSelect = document.validerlinkform.getElementById('hovedkategori-10');
for (var oIndex = 0; oIndex < objSelect.options.length; oIndex++) {
    if (objSelect.options[oIndex].text == 'Trailere') {
        objSelect.selectedIndex = oIndex; break;
    }
}
Avatar billede stingbat Nybegynder
11. januar 2004 - 22:55 #9
Linien:
objSelect.selectedIndex = oIndex; break;

kan dog udskiftes med:
objSelect.options[oIndex].selected = true; break;

Lidt smag og behag ;-)
Avatar billede sub_zero Nybegynder
11. januar 2004 - 22:59 #10
Jeg får følgende fejl med det der:
Object doesn't support this property or method
Avatar billede stingbat Nybegynder
11. januar 2004 - 23:09 #11
Checket hvilken linie der fejler?

Anyway... der er i hvertfald en lille bug her:
echo '<td height="24"><select name="hovedkategori-'.$row[id" class="infoboxtext" style="width: 150px" onChange="createOpts(this,\'hovedkategori'.$row[id].'\');"><option selected="selected">Hovedkategori</option></select></td>';

$row[id <-- du mangler ] til sidst
Avatar billede stingbat Nybegynder
11. januar 2004 - 23:10 #12
hov... rettere sagt:
].'

$row[id skal ændres til:
$row[id].'
Avatar billede stingbat Nybegynder
11. januar 2004 - 23:12 #13
Hmm... var vidst ikke det eneste sted... ændre den sidste stump kode til følgende:

<?php
$result = mysql_query("SELECT * from validerlink");
while ($row = mysql_fetch_array($result)) {
    list($addedYear,$addedMonth,$addedDay) = split('-',$row["added"]);
    $addedstampeddate = mktime(12,0,0,$addedMonth,$addedDay,$addedYear);
    $added = date("d.m.Y",$addedstampeddate);
    $status  = "";
    if ($row["aktiver"] == 0) {
        $status = "- aktiver";
    }
    echo '<tr bgcolor="f7f7f7">';
        echo '<td height="24" class="infoheadline"><div align="left"><input type="radio" name="link" value="'.$row["id"].'"></div></td>';
        echo '<td height="24" class="infoheadline">'.$row["navn"].'</td>';
        echo '<td height="24" class="infoboxtext">'.$added.'</td>';
        if ($row['kategoritype'] == 0) {
            echo '<td height="24"><select name="hovedkategori'.$row["id"].'" class="infoboxtext" style="width: 150px" onChange="createOpts(this,\'hovedkategori'.$row["id"].'\',\'underkategori'.$row["id"].'\');"><option selected="selected">Hovedkategori</option></select></td>';
            echo '<td width="155" height="24"><div align="left"><select name="underkategori'.$row["id"].'" class="infoboxtext" style="width: 150px"><option selected="selected">&lt;-- Vælg Hovedkategori</option></select></div></td>';
        } else {
            echo '<td height="24"><select name="hovedkategori-'.$row["id"].'" class="infoboxtext" style="width: 150px" onChange="createOpts(this,\'hovedkategori'.$row["id"].'\');"><option selected="selected">Hovedkategori</option></select></td>';
            echo '<td height="24"><div align="left"><input type="text" class="boxborder" value="'.$row["kategori"].'" /></td>';
        }
        echo '<script language="javascript" type="text/javascript">createOpts(document.getElementById(\'hovedkategori'.$row["id"].'\'));</script>';
        echo '<script language="javascript" type="text/javascript">document.validerlinkform.hovedkategori'.$row["id"].'.'.$row["hovedkategori"].'.selected="true";</script>';
        echo '<td height="24" class="infoboxtext"><em>'.$status.'</em></td>';
        echo '<td><input name="aktiver" type="button" class="boxborder" style="width: 50px" onClick=\'java script:window.location="validerlink.php?do=aktiver&id='.$row["id"].'"\' value="Aktiver" /></td>';
        echo '<td><input name="vistilmelding" type="button" class="boxborder" style="width: 74px" onClick=\'java script:window.location="validerlink.php"\' value="Tilmelingsdata" /></td>';
    echo '</tr>';
}
unset ($result);
?>
Avatar billede stingbat Nybegynder
11. januar 2004 - 23:15 #14
^^ du havde lavet den før omtalte fejl en del gange - så den kunne af gode grunde ikke udskrive 10 (osv). Scriptet burde også have fejlet?!

Anyway, husk at passe på med at skrive $row[id] ... SKAL være $row["id"] eller $row['id'] !

PHP acceptere det dog uden, fordi den er "flink" - men oprigtigt er det ugyldig kode!

Husk at teste lokalt på en PHP sat op til "udvikling", sådan at du ser fejl og advarsler...
Avatar billede sub_zero Nybegynder
11. januar 2004 - 23:16 #15
får af vide at fejlen er i linje 49 tegn 1, hvis du så kigger i kildekoden på siden, ser du at linje 49 er:

<tr bgcolor="f7f7f7"><td height="24" class="infoheadline"><div align="left"><input type="radio" name="link" value="11"></div></td><td height="24" class="infoheadline">sadacxzdfokfacasln</td><td height="24" class="infoboxtext">01.01.1970</td><td height="24"><select name="hovedkategori11" class="infoboxtext" style="width: 150px" onChange="createOpts(this,'hovedkategori11');"><option selected="selected">Hovedkategori</option></select></td><td height="24"><div align="left"><input type="text" class="boxborder" value="STYLING" /></td><script language="javascript" type="text/javascript">createOpts(document.getElementById('hovedkategori11'));</script><script language="javascript" type="text/javascript">objSelect = document.validerlinkform.getElementById('hovedkategori11');for (var oIndex = 0; oIndex < objSelect.options.length; oIndex++) {if (objSelect.options[oIndex].text == 'BILER') {objSelect.selectedIndex = oIndex; break;}}</script><td height="24" class="infoboxtext"><em></em></td><td><input name="aktiver" type="button" class="boxborder" style="width: 50px" onClick='java script:window.location="validerlink.php?do=aktiver&id=11"' value="Aktiver" /></td><td><input name="vistilmelding" type="button" class="boxborder" style="width: 74px" onClick='java script:window.location="validerlink.php"' value="Tilmelingsdata" /></td></tr><tr bgcolor="f7f7f7"><td height="24" class="infoheadline"><div align="left"><input type="radio" name="link" value="9"></div></td><td height="24" class="infoheadline">Testhjemmeside</td><td height="24" class="infoboxtext">01.01.1970</td><td height="24"><select name="hovedkategori9" class="infoboxtext" style="width: 150px" onChange="createOpts(this,'hovedkategori9','underkategori9');"><option selected="selected">Hovedkategori</option></select></td><td width="155" height="24"><div align="left"><select name="underkategori9" class="infoboxtext" style="width: 150px"><option selected="selected">&lt;-- Vælg Hovedkategori</option></select></div></td><script language="javascript" type="text/javascript">createOpts(document.getElementById('hovedkategori9'));</script><script language="javascript" type="text/javascript">objSelect = document.validerlinkform.getElementById('hovedkategori9');for (var oIndex = 0; oIndex < objSelect.options.length; oIndex++) {if (objSelect.options[oIndex].text == 'BILER') {objSelect.selectedIndex = oIndex; break;}}</script><td height="24" class="infoboxtext"><em></em></td><td><input name="aktiver" type="button" class="boxborder" style="width: 50px" onClick='java script:window.location="validerlink.php?do=aktiver&id=9"' value="Aktiver" /></td><td><input name="vistilmelding" type="button" class="boxborder" style="width: 74px" onClick='java script:window.location="validerlink.php"' value="Tilmelingsdata" /></td></tr><tr bgcolor="f7f7f7"><td height="24" class="infoheadline"><div align="left"><input type="radio" name="link" value="10"></div></td><td height="24" class="infoheadline">dgdg</td><td height="24" class="infoboxtext">01.01.1970</td><td height="24"><select name="hovedkategori10" class="infoboxtext" style="width: 150px" onChange="createOpts(this,'hovedkategori10','underkategori10');"><option selected="selected">Hovedkategori</option></select></td><td width="155" height="24"><div align="left"><select name="underkategori10" class="infoboxtext" style="width: 150px"><option selected="selected">&lt;-- Vælg Hovedkategori</option></select></div></td><script language="javascript" type="text/javascript">createOpts(document.getElementById('hovedkategori10'));</script><script language="javascript" type="text/javascript">objSelect = document.validerlinkform.getElementById('hovedkategori10');for (var oIndex = 0; oIndex < objSelect.options.length; oIndex++) {if (objSelect.options[oIndex].text == 'TRAILERE') {objSelect.selectedIndex = oIndex; break;}}</script><td height="24" class="infoboxtext"><em></em></td><td><input name="aktiver" type="button" class="boxborder" style="width: 50px" onClick='java script:window.location="validerlink.php?do=aktiver&id=10"' value="Aktiver" /></td><td><input name="vistilmelding" type="button" class="boxborder" style="width: 74px" onClick='java script:window.location="validerlink.php"' value="Tilmelingsdata" /></td></tr><tr bgcolor="f7f7f7"><td height="24" class="infoheadline"><div align="left"><input type="radio" name="link" value="12"></div></td><td height="24" class="infoheadline">BG</td><td height="24" class="infoboxtext">01.01.1970</td><td height="24"><select name="hovedkategori12" class="infoboxtext" style="width: 150px" onChange="createOpts(this,'hovedkategori12','underkategori12');"><option selected="selected">Hovedkategori</option></select></td><td width="155" height="24"><div align="left"><select name="underkategori12" class="infoboxtext" style="width: 150px"><option selected="selected">&lt;-- Vælg Hovedkategori</option></select></div></td><script language="javascript" type="text/javascript">createOpts(document.getElementById('hovedkategori12'));</script><script language="javascript" type="text/javascript">objSelect = document.validerlinkform.getElementById('hovedkategori12');for (var oIndex = 0; oIndex < objSelect.options.length; oIndex++) {if (objSelect.options[oIndex].text == 'BILER') {objSelect.selectedIndex = oIndex; break;}}</script><td height="24" class="infoboxtext"><em></em></td><td><input name="aktiver" type="button" class="boxborder" style="width: 50px" onClick='java script:window.location="validerlink.php?do=aktiver&id=12"' value="Aktiver" /></td><td><input name="vistilmelding" type="button" class="boxborder" style="width: 74px" onClick='java script:window.location="validerlink.php"' value="Tilmelingsdata" /></td></tr><tr bgcolor="f7f7f7"><td height="24" class="infoheadline"><div align="left"><input type="radio" name="link" value="13"></div></td><td height="24" class="infoheadline">sddaasdavbbvbcvb</td><td height="24" class="infoboxtext">01.01.1970</td><td height="24"><select name="hovedkategori13" class="infoboxtext" style="width: 150px" onChange="createOpts(this,'hovedkategori13','underkategori13');"><option selected="selected">Hovedkategori</option></select></td><td width="155" height="24"><div align="left"><select name="underkategori13" class="infoboxtext" style="width: 150px"><option selected="selected">&lt;-- Vælg Hovedkategori</option></select></div></td><script language="javascript" type="text/javascript">createOpts(document.getElementById('hovedkategori13'));</script><script language="javascript" type="text/javascript">objSelect = document.validerlinkform.getElementById('hovedkategori13');for (var oIndex = 0; oIndex < objSelect.options.length; oIndex++) {if (objSelect.options[oIndex].text == 'BILER') {objSelect.selectedIndex = oIndex; break;}}</script><td height="24" class="infoboxtext"><em></em></td><td><input name="aktiver" type="button" class="boxborder" style="width: 50px" onClick='java script:window.location="validerlink.php?do=aktiver&id=13"' value="Aktiver" /></td><td><input name="vistilmelding" type="button" class="boxborder" style="width: 74px" onClick='java script:window.location="validerlink.php"' value="Tilmelingsdata" /></td></tr><tr bgcolor="f7f7f7"><td height="24" class="infoheadline"><div align="left"><input type="radio" name="link" value="14"></div></td><td height="24" class="infoheadline">Danske Bank</td><td height="24" class="infoboxtext">01.01.1970</td><td height="24"><select name="hovedkategori14" class="infoboxtext" style="width: 150px" onChange="createOpts(this,'hovedkategori14','underkategori14');"><option selected="selected">Hovedkategori</option></select></td><td width="155" height="24"><div align="left"><select name="underkategori14" class="infoboxtext" style="width: 150px"><option selected="selected">&lt;-- Vælg Hovedkategori</option></select></div></td><script language="javascript" type="text/javascript">createOpts(document.getElementById('hovedkategori14'));</script><script language="javascript" type="text/javascript">objSelect = document.validerlinkform.getElementById('hovedkategori14');for (var oIndex = 0; oIndex < objSelect.options.length; oIndex++) {if (objSelect.options[oIndex].text == 'BILER') {objSelect.selectedIndex = oIndex; break;}}</script><td height="24" class="infoboxtext"><em></em></td><td><input name="aktiver" type="button" class="boxborder" style="width: 50px" onClick='java script:window.location="validerlink.php?do=aktiver&id=14"' value="Aktiver" /></td><td><input name="vistilmelding" type="button" class="boxborder" style="width: 74px" onClick='java script:window.location="validerlink.php"' value="Tilmelingsdata" /></td></tr><tr bgcolor="f7f7f7"><td height="24" class="infoheadline"><div align="left"><input type="radio" name="link" value="15"></div></td><td height="24" class="infoheadline">ffds</td><td height="24" class="infoboxtext">01.01.1970</td><td height="24"><select name="hovedkategori15" class="infoboxtext" style="width: 150px" onChange="createOpts(this,'hovedkategori15','underkategori15');"><option selected="selected">Hovedkategori</option></select></td><td width="155" height="24"><div align="left"><select name="underkategori15" class="infoboxtext" style="width: 150px"><option selected="selected">&lt;-- Vælg Hovedkategori</option></select></div></td><script language="javascript" type="text/javascript">createOpts(document.getElementById('hovedkategori15'));</script><script language="javascript" type="text/javascript">objSelect = document.validerlinkform.getElementById('hovedkategori15');for (var oIndex = 0; oIndex < objSelect.options.length; oIndex++) {if (objSelect.options[oIndex].text == 'BILER') {objSelect.selectedIndex = oIndex; break;}}</script><td height="24" class="infoboxtext"><em></em></td><td><input name="aktiver" type="button" class="boxborder" style="width: 50px" onClick='java script:window.location="validerlink.php?do=aktiver&id=15"' value="Aktiver" /></td><td><input name="vistilmelding" type="button" class="boxborder" style="width: 74px" onClick='java script:window.location="validerlink.php"' value="Tilmelingsdata" /></td></tr><tr bgcolor="f7f7f7"><td height="24" class="infoheadline"><div align="left"><input type="radio" name="link" value="16"></div></td><td height="24" class="infoheadline">snaps!</td><td height="24" class="infoboxtext">01.01.1970</td><td height="24"><select name="hovedkategori16" class="infoboxtext" style="width: 150px" onChange="createOpts(this,'hovedkategori16','underkategori16');"><option selected="selected">Hovedkategori</option></select></td><td width="155" height="24"><div align="left"><select name="underkategori16" class="infoboxtext" style="width: 150px"><option selected="selected">&lt;-- Vælg Hovedkategori</option></select></div></td><script language="javascript" type="text/javascript">createOpts(document.getElementById('hovedkategori16'));</script><script language="javascript" type="text/javascript">objSelect = document.validerlinkform.getElementById('hovedkategori16');for (var oIndex = 0; oIndex < objSelect.options.length; oIndex++) {if (objSelect.options[oIndex].text == 'BILER') {objSelect.selectedIndex = oIndex; break;}}</script><td height="24" class="infoboxtext"><em></em></td><td><input name="aktiver" type="button" class="boxborder" style="width: 50px" onClick='java script:window.location="validerlink.php?do=aktiver&id=16"' value="Aktiver" /></td><td><input name="vistilmelding" type="button" class="boxborder" style="width: 74px" onClick='java script:window.location="validerlink.php"' value="Tilmelingsdata" /></td></tr><tr bgcolor="f7f7f7"><td height="24" class="infoheadline"><div align="left"><input type="radio" name="link" value="17"></div></td><td height="24" class="infoheadline">www.Bildillen.dk</td><td height="24" class="infoboxtext">01.01.1970</td><td height="24"><select name="hovedkategori17" class="infoboxtext" style="width: 150px" onChange="createOpts(this,'hovedkategori17','underkategori17');"><option selected="selected">Hovedkategori</option></select></td><td width="155" height="24"><div align="left"><select name="underkategori17" class="infoboxtext" style="width: 150px"><option selected="selected">&lt;-- Vælg Hovedkategori</option></select></div></td><script language="javascript" type="text/javascript">createOpts(document.getElementById('hovedkategori17'));</script><script language="javascript" type="text/javascript">objSelect = document.validerlinkform.getElementById('hovedkategori17');for (var oIndex = 0; oIndex < objSelect.options.length; oIndex++) {if (objSelect.options[oIndex].text == 'BILER') {objSelect.selectedIndex = oIndex; break;}}</script><td height="24" class="infoboxtext"><em></em></td><td><input name="aktiver" type="button" class="boxborder" style="width: 50px" onClick='java script:window.location="validerlink.php?do=aktiver&id=17"' value="Aktiver" /></td><td><input name="vistilmelding" type="button" class="boxborder" style="width: 74px" onClick='java script:window.location="validerlink.php"' value="Tilmelingsdata" /></td></tr>

derfor er det ikke så nemt at finde ud af, derfra :)
Avatar billede stingbat Nybegynder
11. januar 2004 - 23:31 #16
Kan godt fortælle dig grunden til at det fejler - er at du prøver at "kontakte" validerlinkform før BODY'en (eller i det mindste </FORM>) er afsluttet - dermed kender den så ikke til formen, før den er dette.

Du må derfor lave en "onload" i stedet, som kan kører en funktion som sætter værdierne...

Håber at du kan følge mig?!
Avatar billede stingbat Nybegynder
11. januar 2004 - 23:34 #17
Hmm *Gab* ... burde vidst få mig nåed søvn.

Men har lige testet - fejlen ligger vidst derimod i:
objSelect = document.validerlinkform.getElementById('hovedkategori-10');

Udskift med:
objSelect = document.validerlinkform['hovedkategori-10'];
Avatar billede stingbat Nybegynder
11. januar 2004 - 23:37 #18
^^ Skyldes at getElementById KUN kan benyttes på document-objected (se evt.: http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/getelementbyid.asp)
Avatar billede sub_zero Nybegynder
12. januar 2004 - 17:04 #19
okay, så vidt så godt :)
nu vælger den automatisk udfra min database, men scriptet createOpts opdaterer ikke, altså - det står jo til at køre ved onChange på selectformen hovedkategori. Har prøver bare at køre scriptet efter objSelect (vha. echo 'createOpts(this,\'hovedkategori'.$row[id].'\',\'underkategori'.$row[id].'\');';) og alt det, men så bliver formen sat tilbage til 'standard'
Avatar billede stingbat Nybegynder
12. januar 2004 - 20:27 #20
Hvis jeg har forstået din idé korrekt, kan du jo ligeså godt smide den objSelect (og tilhørende funktioner ind i createOpts - da denne så vil opdatere til den ønskede.

Har dog ikke lige haft mulighed for selv at teste, da scriptet ikke kan testes som "helhed", når man mangler database-oplysningerne (alle tabeller, indhold osv).
Avatar billede stingbat Nybegynder
16. januar 2004 - 22:34 #21
sub_zero:
Blev problemet løst? Husk at lukke svaret i så fald... :-)
Avatar billede sub_zero Nybegynder
16. januar 2004 - 22:48 #22
Nej, problemet blev aldrig løst - havde ikke mere tid tilbage til den side (validerlink) - desværre! - jeg accepterer dog dit svar, som tak for den tid du har brugt på at hjælpe. Jeg vender nok tilbage en anden gang, når sitet er klar og jeg bare skal lave bugfixes :)
Avatar billede stingbat Nybegynder
16. januar 2004 - 23:03 #23
Bare i orden...

Tænkte nu mere på at spørgsmålet lå åbent. Men ellers skriver du bare :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester