Autor Zpráva
Tomasds
Profil
Postupuju podle návodu z jpw.

<a href="#" onmouseover="document.formular.['cena[1]'].value = 'ahoj'">

nefunguje mi ani toto. Co dělám špatně?

Navíc bych potřeboval nastavit "ahoj" všem textboxům "cena".
Tomasds
Profil
no.. abych upřesnil.. textboxů "cena" mám neznámý počet a po kliknutí bych chtěl vyplnit všechny textboxy tou hodnotou, která je textboxu cena[0].
Ale myslím že to už bych nějak dohromady dal.
Chamurappi
Profil
Reaguji na Tomasds:
Zruš tuto tečku:
document.formular.['cena[1]'].value
Tomasds
Profil
Chamurappi
Díky, jede to.

Teď došlo na druhý problém.. myslel jsem že to půjde, ale nějak se to brání :(
Mám toto:

<script type="text/javascript">
function vyplnit{
for (i=2; i <= 7; i++) {document.formular['cena[i]'].value=document.formular['cena[1]'].value;}
}
</script>

a pak
<a href="#" onclick="vyplnit">Vyplnit vše</a>


.. a samozřejmě to nejde.
Měsíček
Profil
Co to má za smysl? IMHO pokud jsem dobře pochopil skript tak si to vytáhne od každého prvku (možná <input>u) hodnotu "value", která je prázdná a zase si ji tam dosadí zpět (prázdnou) takže žádný efekt být nemůže. A mimochodem onclick="vyplnit();" ...
Chamurappi
Profil
Reaguji na Měsíčka:
Asi by to mělo vyplnit do cena[2 až 7] hodnotu z cena[1].

Reaguji na Tomasds:
document.formular['cena[' + i + ']'].value = …
Tomasds
Profil
Měsíček
Tak jsem opravil na "vyplnit();" a pořád nic.

document.formular['cena[i]'].value=document.formular['cena[1]'].val ue;


Chci všechny inputy vyplnit tou hodnotou, která je v inputu[1]
Měsíček
Profil
Reaguji na Chamurappiho:

A jó, slila se mi jednička a ičko v ičko :-)

Reaguji na Tomasds:

Výborně, teď ještě upravit to ["cena["+i+"]"] jak již napsal Chamurappi a mělo by to fungovat.
Tomasds
Profil
už si připadám jak trubka, ale prostě toto nefunguje:

  <head>
<script type="text/javascript">
function vyplnit{
for (i=2; i <= 7; i++) {document.formular['cenaP1U1['+i+']'].value=document.formular['cenaP1U 1[1]'].value;}
}
</script>
  </head>
  <body>
      <a href="#" onclick="vyplnit();">Vyplnit vše</a>
        <form name="formular" action="index.php" method="get">
        <input type="text" size="10" name="cenaP1U1[1]" value="1">

        <input type="text" size="10" name="cenaP1U1[2]" value="3">
        <input type="text" size="10" name="cenaP1U1[3]" value="3">
  </body>
</html>
Měsíček
Profil
Takový skripty já upřímně nesnáším, co třeba takhle? :
<script type="text/javascript">
  function vypln () {
    var input   = document.getElementsByTagName("input");
    var input_2 = input[0].value;
      for (var i = 1; i < input.length; i++) {
        input[i].value = input_2;
      }
  }
</script>
  </head>
  <body>
      <a href="#" onclick="vypln();">Vyplnit vše</a>
        <form name="formular" action="index.php" method="get">
        <input type="text" size="10" name="cenaP1U1" value="1">

        <input type="text" size="10" name="cenaP1U1" value="3">
        <input type="text" size="10" name="cenaP1U1" value="3">
  </body>
</html>

EDIT a při úpravě toho šíleného formuláře (zbytečné method="" + .. hrůzný name) ..
<script type="text/javascript">
  function vypln () {
    var input   = document.getElementsByTagName("input");
      for (var i = 1; i < input.length; i++) {
        input[i].value = input[0].value;;
      }
  }
</script>

<a href="#" onClick="vypln();">Vyplnit vše</a>

  <form action="index.php">
    <input size="10" name="cenaP1U1_1" value="1">
    <input size="10" name="cenaP1U1_2" value="3">
    <input size="10" name="cenaP1U1_3" value="3">
  </form>

Tomasds
Profil
Měsíček, Chamurappi
Díky oběma, nakonec jsem to pokořil po svém, ale s vydatným opisováním tady.
Měsíček
Profil
Reaguji na Tomasds:

"Díky oběma, nakonec jsem to pokořil po svém, ale s vydatným opisováním tady."

ok, mohl by jsi sem prosím ukázat své řešení?
Tomasds
Profil
Měsíček
function vyplnit () {
  var p1u1 = document.formular['cenaP1U1[1]'].value;
  var p1u2 = document.formular['cenaP1U2[1]'].value;
  var p2u1 = document.formular['cenaP2U1[1]'].value;
  var p2u2 = document.formular['cenaP2U2[1]'].value;

  for (i=2; i <= 20; i++) {
    document.formular['cenaP1U1['+i+']'].value=p1u1;
    document.formular['cenaP1U2['+i+']'].value=p1u2;
    document.formular['cenaP2U1['+i+']'].value=p2u1;
    document.formular['cenaP2U2['+i+']'].value=p2u2;
  }
}

Jde o cyklus, ve kterém jsou čtveřice inputů. A v nich mají být čtveřice hodnot, které ale někdy budou stejné. Šlo o ulehčení práce návštěvníkům.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0