Autor Zpráva
John II
Profil *
Dobrý den...potřebuji poradit. Když mám třeba kód
<select name="">
<option value="">...
</select>
atd... a potom textové pole
<input type="text" name="" disabled>
a kdyz kliknu na ten select tak bych potreboval, aby se aktivovalo to textový pole a kdyby ten select aktivovany nebyl tak by bylo pole disabled. Dekuji
habendorf
Profil
Na onfocus toho selectu navážeš disabled="false" a na onblur vrátíš zase na true.
John II
Profil *
ja jsem v JavaScriptu zacatecnik...kam to vse mam dat?
Měsíček
Profil
Reaguji na Johna II:

"ja jsem v JavaScriptu zacatecnik...kam to vse mam dat?"

Já taky a ještě tak dva roky budu.

Jedno z možných řešení:
<form action="#">
  <fieldset>
    <legend> Formulář </legend>
      <select onClick="document.forms[0].dis_input.disabled=false">
        <option value=""> ... </option>
      </select>
  <input type="text" name="dis_input" disabled>
  </fieldset>
</form>
habendorf
Profil
Měsíček

Onfocus bude lepší - aktivace klávesnicí. A ještě ta deaktivace na onblur inputu.
Měsíček
Profil
Reaguji na habendorfa:

"Onfocus bude lepší - aktivace klávesnicí. A ještě ta deaktivace na onblur inputu."

S tím onFocusem máš pravdu, ale když nastavím onBlur <select>u tak si chudák do <input>u ani neklepne :),protože když si zkusí klepnout do <input>u tak už nebude <select> aktivní a <input> se zase zablokuje, takže <input> bude vlastně k ničemu nebo jsem to špatně pochopil?

Pro Johna II:

Jestli je tedy chyba v mém nepochopení tak to bude nejspíše takto:

<form action="#">
  <fieldset>
    <select onFocus="document.forms[0].dis_input.disabled=false" 
            onBlur ="document.forms[0].dis_input.disabled= true">
    <option value=""> ... </option>
  </select>
  <input type="text" name="dis_input" disabled>
  </fieldset>
</form>
a nebo tohle ovšem z naprosto jiným účinkem :) a funkcí.
<form action="#">
  <fieldset>
    <select onFocus="document.forms[0].dis_input.disabled=false">
    <option value=""> ... </option>
  </select>
  <input type="text" name="dis_input" disabled 
         onBlur="document.forms[0].dis_input.disabled= true">
  </fieldset>
</form>
habendorf
Profil
Měsíček
A ještě ta deaktivace na onblur inputu.
John II
Profil *
Ani jedno nefunguje
Měsíček
Profil
Fungují všechny :)
Měsíček
Profil
Viz http://www.bug-test.xf.cz/john.html :)
habendorf
Profil
Měsíček

Funguje jen druhý. První nesplňuje zadání (chybí tam ta deaktivace) a třetí nefunguje z důvodů, které jsi sám výše popsal. Onblur zkrátka musí být na inputu, jak jsem psal výše.
John II
Profil *
Ale ja potrebuju aktivovat textove pole az po kliknuti na option...treba na Jiny duvod a aktivuje se pole. (v tomto priklade je ta option "...")
habendorf
Profil
John II
A proč to neřekneš rovnou? Myslíš, že to bude každý předělávat jak si zrovna vzpomeneš?

a kdyz kliknu na ten select tak bych potreboval, aby se aktivovalo to textový pole
Toto jsi chtěl na začátku, teď tvrdíš něco jiného.

Navíc to máš de facto hotový, stačí přesunout tu událost, ne?
Ale jestli se to má týkat jen jedné option v celém selectu, řešil bych to úplně jinak.

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