Avatar billede bgo Nybegynder
27. november 2006 - 15:07 Der er 1 løsning

focus() virker kun ved refresh

Jeg har såmen nok klokket i det igen ;) Men jeg har lidt underlig opførsel i IE (så det gælder altså ikke FF).

Jeg vil gerne derigere focus til bestemte form felter, og har forsøgt med noget onload="document.getElementById(feltid).focus();" - det virker normalt også fint nok, men blot ikke i udvalgte tilfælde.

Via PHP beslutter jeg hvilke felter der skal have focus. Når URL ikke indeholder pc=et_tal så skal det første felt i den første form have focus - og det fungerer ganske efter hensigten ;)

Klikker man så på et link, så oprettes en ny form med et nyt tekstfelt, og dette nye tekstfelt skal så have focus - url'en får tilføjet pc=et_tal. Men, tekstfeltet får ikke focus efter det klik. Refresher jeg siden, SÅ får tekstfeltet focus???

Jeg har checket, og der er ingen sammenfald i id-navne. Jeg har prøvet at finde noget om det herinde, men fandt kun en løsning på en anden problematik (function moveCaretEnd(fieldID)) som sjovt nok ike rettede på det ;)

Følgende er lige efter oprettelse af "afsnit3"

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Administration</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<!-- load the menu stylesheet -->
    <link rel="stylesheet" href="../hmenu/skin-rain.css" />
    <!-- declare the menu location -->
    <script type="text/javascript">
      _dynarch_menu_url = "../hmenu/";
    </script>
    <!-- load the menu program file -->
    <script type="text/javascript" src="../hmenu/hmenu.js"></script>
    <script type="text/javascript">
    function moveCaretEnd(fieldID) {
    var field = document.getElementById(fieldID)
    if (field.createTextRange) {
        var r = field.createTextRange();
        r.moveStart('character', field.value.length);
        r.collapse();
        r.select();
    }
    else {
        field.select();
        field.value += " ";
        field.value = field.value.substr(0, field.value.length-1);
        field.focus();
    }
}
</script>

<link rel="stylesheet" href="../css/css1.css" type="text/css" />
</head>

<body onload="DynarchMenu.setup('menu', { electric: true, tooltips: true, blink: true });moveCaretEnd('afsnit3');return false">
<table style="width:100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td>
      <ul id="menu" style="display: none">
        <li><a href="main.php">Forsiden</a></li>
        <li>Varer
         
  <ul>
    <li><a href="add_item.php">Tilf&oslash;j vare</a></li>
    <li><a href="list_items.php">List varer</a></li>
  </ul>
        </li>
        <li>Varekategorier
         
  <ul>
    <li><a href="add_category.php">Tilf&oslash;j varekategori</a></li>
    <li><a href="list_categories.php">List varekategorier</a></li>
  </ul>
        </li>
       
<li>Ordrer
  <ul>
    <li>Ubehandlede ordrer</li>
    <li>Fakturaer (udest&aring;ende)</li>
    <li>Rykkere</li>
    <li>Fakturaer</li>
  </ul>
</li>
       
<li>Billeder
<ul>
  <li><a href="fs_billede.php">Forside billede</a></li>
  <li>Top billede</li>
  <li>Logo</li>
  <li></li>
  <li>&Oslash;vrige billeder (ikke varer) </li>
</ul></li>
<li>Sider
  <ul>
    <li><a href="pageedit.php?pid=1">Forside</a></li>
    <li><a href="pageedit.php?pid=6">Vilk&aring;r</a></li>
    <li><a href="pageedit.php?pid=7">Hvem er Lie &amp; Lie</a></li>
    <li><a href="pageedit.php?pid=8">Kontakt os</a></li>
    <li></li>
    <li><a href="pageedit.php?pid=3">Dine sider</a></li>
    <li><a href="pageedit.php?pid=4">Anbefalet</a></li>
    <li><a href="pageedit.php?pid=5">Popul&aelig;rt</a></li>
    <li></li>
    <li>Tilf&oslash;j side</li>
    <li>Rediger side</li>
    <li>List sider</li>
  </ul>
        </li>
        <li>Menu
          <ul>
            <li>Tilf&oslash;j menupunkt</li>
            <li>Rediger menupunkt</li>
            <li>List menupunkter</li>
          </ul>
        </li>
        <li>Administratorer
          <ul>
            <li>Tilf&oslash;j administrator</li>
            <li>Rediger administrator</li>
            <li>List administratorer</li>
          </ul>
        </li>
        <li>Statistik
          <ul>
            <li>Hvilke sider vises</li>
            <li>Hvilke varer vises</li>
            <li>Hvilke varer k&oslash;bes</li>
          </ul>
        </li>
        <li class="disabled">Hj&aelig;lp</li>
        <li><a href="logout.php">Log ud</a></li>
        <li></li>
        <li>
          Bruno          <ul>
            <li>Rediger login navn</li>
            <li>Rediger password</li>
          </ul>
        </li>
      </ul>
      </td>
  </tr>
</table>
<table id="main" cellpadding="0" cellspacing="0" width="100%">
  <tr><td>
<table id="contents" style="width:100%;" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <th scope="col">Rediger side - Kontakt information</th>
      </tr>
      <tr>
        <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td width="10" height="10"><img src="../hmenu/img/rain/popup-top-left.gif" width="10" height="10" alt=" " /></td>
            <td height="10" ><img src="../images/spacer.gif" width="10" height="10" alt=" " /></td>
            <td width="10" height="10"><img src="../hmenu/img/rain/popup-top-right.gif" width="10" height="10" alt=" " /></td>
          </tr>
          <tr>
            <td width="10"><img src="../images/spacer.gif" width="10" height="10" alt=" " /></td>
            <td>
           
           
            <fieldset id="pagebasics"><legend>Basis information</legend>
            <form action="doeditside.php" method="post" name="sideform" enctype="multipart/form-data">
           
           
            <p><label for="sidetitel">Side titel:</label>
            <input name="sidetitel" type="text" id="sidetitel" tabindex="1" value="Kontakt os" size="50" maxlength="50" />
            (Titel er det der vises som overskrift)*</p>
            <p><label for="sidenavn">Side navn:</label>
            <input name="sidenavn" type="text" disabled="disabled" id="sidenavn" tabindex="2" value="Kontakt information" size="50" maxlength="50" />
            (Navn er til internt brug p&aring; administrations sider, og kan derfor indeholde mere info)* </p>
            <p>
              <input type="submit" name="Submit" value="Gem basis information" tabindex="3" />
            </p>
            </form>
           
            </fieldset>
                        <fieldset id="pagecontents" style="margin-top:10px;"><legend>Sidens indhold</legend>
            <a name="a1" /><fieldset id="sideafsnitcontainer1" style="margin-top:10px; margin-left:5px; margin-right:5px;"><legend>Afsnit nr. 1:</legend>
<table style="width:100%;" border="0" cellspacing="0" cellpadding="0">
              <tr><td style="width:369px">
            <form action="doeditafsnit.php?aid=59&amp;pc=1&amp;pid=8" method="post" name="sideafsnit59" id="sideafsnit59" enctype="multipart/form-data">
                           
             
             
              <p>
                <textarea name="afsnit1" cols="50" rows="10" id="afsnit1" tabindex="4"></textarea>
                </p>
             
                             
             
            </form>
            </td><td width="632" style="vertical-align:top">
            <p><a href="java script:document.getElementById('sideafsnit59').submit()" tabindex="5">Gem afsnit 1</a></p>
                        <p><a href="dodelafsnit.php?aid=59&amp;pc=0&amp;pid=8" tabindex="6">Slet afsnit  1</a> (kan ikke annuleres)</p>
                        <p><a href="java script:document.getElementById('addafsnit').submit()" tabindex="7">Tilf&oslash;j afsnit</a></p>
           
           
               
            </td></tr></table>
           
            </fieldset>
            <a name="a2" /><fieldset id="sideafsnitcontainer2" style="margin-top:10px; margin-left:5px; margin-right:5px;"><legend>Afsnit nr. 2:</legend>
<table style="width:100%;" border="0" cellspacing="0" cellpadding="0">
              <tr><td style="width:369px">
            <form action="doeditafsnit.php?aid=60&amp;pc=2&amp;pid=8" method="post" name="sideafsnit60" id="sideafsnit60" enctype="multipart/form-data">
                           
             
             
              <p>
                <textarea name="afsnit2" cols="50" rows="10" id="afsnit2" tabindex="8"></textarea>
                </p>
             
                             
             
            </form>
            </td><td width="632" style="vertical-align:top">
            <p><a href="java script:document.getElementById('sideafsnit60').submit()" tabindex="9">Gem afsnit 2</a></p>
                        <p><a href="dodelafsnit.php?aid=60&amp;pc=1&amp;pid=8" tabindex="10">Slet afsnit  2</a> (kan ikke annuleres)</p>
                        <p><a href="domoveafsnit.php?aid=60&amp;pc=2&amp;pid=8" tabindex="11">Flyt op</a></p>
                        <p><a href="java script:document.getElementById('addafsnit').submit()" tabindex="12">Tilf&oslash;j afsnit</a></p>
           
           
               
            </td></tr></table>
           
            </fieldset>
            <a name="a3" /><fieldset id="sideafsnitcontainer3" style="margin-top:10px; margin-left:5px; margin-right:5px;"><legend>Afsnit nr. 3:</legend>
<table style="width:100%;" border="0" cellspacing="0" cellpadding="0">
              <tr><td style="width:369px">
            <form action="doeditafsnit.php?aid=62&amp;pc=3&amp;pid=8" method="post" name="sideafsnit62" id="sideafsnit62" enctype="multipart/form-data">
                           
             
             
              <p>
                <textarea name="afsnit3" cols="50" rows="10" id="afsnit3" tabindex="13"></textarea>
                </p>
             
                             
             
            </form>
            </td><td width="632" style="vertical-align:top">
            <p><a href="java script:document.getElementById('sideafsnit62').submit()" tabindex="14">Gem afsnit 3</a></p>
                        <p><a href="dodelafsnit.php?aid=62&amp;pc=2&amp;pid=8" tabindex="15">Slet afsnit  3</a> (kan ikke annuleres)</p>
                        <p><a href="domoveafsnit.php?aid=62&amp;pc=3&amp;pid=8" tabindex="16">Flyt op</a></p>
                        <p><a href="java script:document.getElementById('addafsnit').submit()" tabindex="17">Tilf&oslash;j afsnit</a></p>
           
           
               
            </td></tr></table>
           
            </fieldset>
                       
            <form action="doaddafsnit.php?pid=8&amp;pc=4" method="post" name="addafsnit" enctype="multipart/form-data" style="display:none" id="addafsnit">
             
            </form>
                        </fieldset>
           
           
           
            </td>
            <td width="10"><img src="../images/spacer.gif" width="10" height="10" alt=" " /></td>
          </tr>
          <tr>
            <td width="10" height="10"><img src="../hmenu/img/rain/popup-bottom-left.gif" width="10" height="10" alt=" " /></td>
            <td height="10" ><img src="../images/spacer.gif" width="10" height="10" alt=" " /></td>
            <td width="10" height="10"><img src="../hmenu/img/rain/popup-bottom-right.gif" width="10" height="10" alt=" " /></td>
          </tr>
        </table></td>
      </tr>
    </table></td>
    </tr>
    </table>
   
</body>
</html>


afsnit3 får ikke focus når ovenstående loades lige efter oprettelsen. Refresher jeg får jeg følgende:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Administration</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<!-- load the menu stylesheet -->
    <link rel="stylesheet" href="../hmenu/skin-rain.css" />
    <!-- declare the menu location -->
    <script type="text/javascript">
      _dynarch_menu_url = "../hmenu/";
    </script>
    <!-- load the menu program file -->
    <script type="text/javascript" src="../hmenu/hmenu.js"></script>
    <script type="text/javascript">
    function moveCaretEnd(fieldID) {
    var field = document.getElementById(fieldID)
    if (field.createTextRange) {
        var r = field.createTextRange();
        r.moveStart('character', field.value.length);
        r.collapse();
        r.select();
    }
    else {
        field.select();
        field.value += " ";
        field.value = field.value.substr(0, field.value.length-1);
        field.focus();
    }
}
</script>

<link rel="stylesheet" href="../css/css1.css" type="text/css" />
</head>

<body onload="DynarchMenu.setup('menu', { electric: true, tooltips: true, blink: true });moveCaretEnd('afsnit3');return false">
<table style="width:100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td>
      <ul id="menu" style="display: none">
        <li><a href="main.php">Forsiden</a></li>
        <li>Varer
         
  <ul>
    <li><a href="add_item.php">Tilf&oslash;j vare</a></li>
    <li><a href="list_items.php">List varer</a></li>
  </ul>
        </li>
        <li>Varekategorier
         
  <ul>
    <li><a href="add_category.php">Tilf&oslash;j varekategori</a></li>
    <li><a href="list_categories.php">List varekategorier</a></li>
  </ul>
        </li>
       
<li>Ordrer
  <ul>
    <li>Ubehandlede ordrer</li>
    <li>Fakturaer (udest&aring;ende)</li>
    <li>Rykkere</li>
    <li>Fakturaer</li>
  </ul>
</li>
       
<li>Billeder
<ul>
  <li><a href="fs_billede.php">Forside billede</a></li>
  <li>Top billede</li>
  <li>Logo</li>
  <li></li>
  <li>&Oslash;vrige billeder (ikke varer) </li>
</ul></li>
<li>Sider
  <ul>
    <li><a href="pageedit.php?pid=1">Forside</a></li>
    <li><a href="pageedit.php?pid=6">Vilk&aring;r</a></li>
    <li><a href="pageedit.php?pid=7">Hvem er Lie &amp; Lie</a></li>
    <li><a href="pageedit.php?pid=8">Kontakt os</a></li>
    <li></li>
    <li><a href="pageedit.php?pid=3">Dine sider</a></li>
    <li><a href="pageedit.php?pid=4">Anbefalet</a></li>
    <li><a href="pageedit.php?pid=5">Popul&aelig;rt</a></li>
    <li></li>
    <li>Tilf&oslash;j side</li>
    <li>Rediger side</li>
    <li>List sider</li>
  </ul>
        </li>
        <li>Menu
          <ul>
            <li>Tilf&oslash;j menupunkt</li>
            <li>Rediger menupunkt</li>
            <li>List menupunkter</li>
          </ul>
        </li>
        <li>Administratorer
          <ul>
            <li>Tilf&oslash;j administrator</li>
            <li>Rediger administrator</li>
            <li>List administratorer</li>
          </ul>
        </li>
        <li>Statistik
          <ul>
            <li>Hvilke sider vises</li>
            <li>Hvilke varer vises</li>
            <li>Hvilke varer k&oslash;bes</li>
          </ul>
        </li>
        <li class="disabled">Hj&aelig;lp</li>
        <li><a href="logout.php">Log ud</a></li>
        <li></li>
        <li>
          Bruno          <ul>
            <li>Rediger login navn</li>
            <li>Rediger password</li>
          </ul>
        </li>
      </ul>
      </td>
  </tr>
</table>
<table id="main" cellpadding="0" cellspacing="0" width="100%">
  <tr><td>
<table id="contents" style="width:100%;" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <th scope="col">Rediger side - Kontakt information</th>
      </tr>
      <tr>
        <td><table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td width="10" height="10"><img src="../hmenu/img/rain/popup-top-left.gif" width="10" height="10" alt=" " /></td>
            <td height="10" ><img src="../images/spacer.gif" width="10" height="10" alt=" " /></td>
            <td width="10" height="10"><img src="../hmenu/img/rain/popup-top-right.gif" width="10" height="10" alt=" " /></td>
          </tr>
          <tr>
            <td width="10"><img src="../images/spacer.gif" width="10" height="10" alt=" " /></td>
            <td>
           
           
            <fieldset id="pagebasics"><legend>Basis information</legend>
            <form action="doeditside.php" method="post" name="sideform" enctype="multipart/form-data">
           
           
            <p><label for="sidetitel">Side titel:</label>
            <input name="sidetitel" type="text" id="sidetitel" tabindex="1" value="Kontakt os" size="50" maxlength="50" />
            (Titel er det der vises som overskrift)*</p>
            <p><label for="sidenavn">Side navn:</label>
            <input name="sidenavn" type="text" disabled="disabled" id="sidenavn" tabindex="2" value="Kontakt information" size="50" maxlength="50" />
            (Navn er til internt brug p&aring; administrations sider, og kan derfor indeholde mere info)* </p>
            <p>
              <input type="submit" name="Submit" value="Gem basis information" tabindex="3" />
            </p>
            </form>
           
            </fieldset>
                        <fieldset id="pagecontents" style="margin-top:10px;"><legend>Sidens indhold</legend>
            <a name="a1" /><fieldset id="sideafsnitcontainer1" style="margin-top:10px; margin-left:5px; margin-right:5px;"><legend>Afsnit nr. 1:</legend>
<table style="width:100%;" border="0" cellspacing="0" cellpadding="0">
              <tr><td style="width:369px">
            <form action="doeditafsnit.php?aid=59&amp;pc=1&amp;pid=8" method="post" name="sideafsnit59" id="sideafsnit59" enctype="multipart/form-data">
                           
             
             
              <p>
                <textarea name="afsnit1" cols="50" rows="10" id="afsnit1" tabindex="4"></textarea>
                </p>
             
                             
             
            </form>
            </td><td width="632" style="vertical-align:top">
            <p><a href="java script:document.getElementById('sideafsnit59').submit()" tabindex="5">Gem afsnit 1</a></p>
                        <p><a href="dodelafsnit.php?aid=59&amp;pc=0&amp;pid=8" tabindex="6">Slet afsnit  1</a> (kan ikke annuleres)</p>
                        <p><a href="java script:document.getElementById('addafsnit').submit()" tabindex="7">Tilf&oslash;j afsnit</a></p>
           
           
               
            </td></tr></table>
           
            </fieldset>
            <a name="a2" /><fieldset id="sideafsnitcontainer2" style="margin-top:10px; margin-left:5px; margin-right:5px;"><legend>Afsnit nr. 2:</legend>
<table style="width:100%;" border="0" cellspacing="0" cellpadding="0">
              <tr><td style="width:369px">
            <form action="doeditafsnit.php?aid=60&amp;pc=2&amp;pid=8" method="post" name="sideafsnit60" id="sideafsnit60" enctype="multipart/form-data">
                           
             
             
              <p>
                <textarea name="afsnit2" cols="50" rows="10" id="afsnit2" tabindex="8"></textarea>
                </p>
             
                             
             
            </form>
            </td><td width="632" style="vertical-align:top">
            <p><a href="java script:document.getElementById('sideafsnit60').submit()" tabindex="9">Gem afsnit 2</a></p>
                        <p><a href="dodelafsnit.php?aid=60&amp;pc=1&amp;pid=8" tabindex="10">Slet afsnit  2</a> (kan ikke annuleres)</p>
                        <p><a href="domoveafsnit.php?aid=60&amp;pc=2&amp;pid=8" tabindex="11">Flyt op</a></p>
                        <p><a href="java script:document.getElementById('addafsnit').submit()" tabindex="12">Tilf&oslash;j afsnit</a></p>
           
           
               
            </td></tr></table>
           
            </fieldset>
            <a name="a3" /><fieldset id="sideafsnitcontainer3" style="margin-top:10px; margin-left:5px; margin-right:5px;"><legend>Afsnit nr. 3:</legend>
<table style="width:100%;" border="0" cellspacing="0" cellpadding="0">
              <tr><td style="width:369px">
            <form action="doeditafsnit.php?aid=62&amp;pc=3&amp;pid=8" method="post" name="sideafsnit62" id="sideafsnit62" enctype="multipart/form-data">
                           
             
             
              <p>
                <textarea name="afsnit3" cols="50" rows="10" id="afsnit3" tabindex="13"></textarea>
                </p>
             
                             
             
            </form>
            </td><td width="632" style="vertical-align:top">
            <p><a href="java script:document.getElementById('sideafsnit62').submit()" tabindex="14">Gem afsnit 3</a></p>
                        <p><a href="dodelafsnit.php?aid=62&amp;pc=2&amp;pid=8" tabindex="15">Slet afsnit  3</a> (kan ikke annuleres)</p>
                        <p><a href="domoveafsnit.php?aid=62&amp;pc=3&amp;pid=8" tabindex="16">Flyt op</a></p>
                        <p><a href="java script:document.getElementById('addafsnit').submit()" tabindex="17">Tilf&oslash;j afsnit</a></p>
           
           
               
            </td></tr></table>
           
            </fieldset>
                       
            <form action="doaddafsnit.php?pid=8&amp;pc=4" method="post" name="addafsnit" enctype="multipart/form-data" style="display:none" id="addafsnit">
             
            </form>
                        </fieldset>
           
           
           
            </td>
            <td width="10"><img src="../images/spacer.gif" width="10" height="10" alt=" " /></td>
          </tr>
          <tr>
            <td width="10" height="10"><img src="../hmenu/img/rain/popup-bottom-left.gif" width="10" height="10" alt=" " /></td>
            <td height="10" ><img src="../images/spacer.gif" width="10" height="10" alt=" " /></td>
            <td width="10" height="10"><img src="../hmenu/img/rain/popup-bottom-right.gif" width="10" height="10" alt=" " /></td>
          </tr>
        </table></td>
      </tr>
    </table></td>
    </tr>
    </table>
   
</body>
</html>


Så vidt jeg kan se er det præcis det samme - men nu FÅR afsnit3 focus. Hvad sker der dog?
Avatar billede bgo Nybegynder
15. december 2006 - 14:57 #1
lukker
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