Autor Zpráva
ineh
Profil *
Dobrý den,
prosím o radu. Už na několik hodin jsem se zasekl s docela zásadním problémem. Konkrétně s přidáním elementu do stránky - sice se přidá, ale je rozpadený.
Po kliknutí v select boxu na druhou volbu by se mi měl do stránky vložit další select s dvěmi možnostmi - kč a euro.

Select se vloží, ale s tím že ty dvě volby jsou mimo select - sou pod ním a select jako takový je prázdný. Jak na to jít správným směrem?
Díky za odpověďi tady je kód:

<script src="js/jquery-1.5.1.min.js" type="text/javascript" /></script>
<script>
$(function() {
        $('#skola_pridat').click(function() {
                $("#pridani_elementu").empty();
                $("#pridani_elementu").append('<div="neco">1111111</div>');
        });
        $('#skola_pridat2').click(function() {
                $("#pridani_elementu").empty();
                $("#pridani_elementu").append(
                    "                <div class=\"span1\" style=\"width:60px\">",
                    "                    <select name=\"select\">",
                    "                            <option value=\"operace_0\" id=\"operace_0\">Kč</option>",
                    "                            <option value=\"operace_1\" id=\"operace_1\">Euro</option>",
                    "                   </select>"
                );
        });
    });
</script>

<select name="ovoce">
    <option value="jb" id="skola_pridat">jablko</option>
    <option value="hs" id="skola_pridat2">hruška</option>
</select>

<div id="pridani_elementu"></div>



[img]www.muj-zivotopis.cz/select.png[/img]


http://muj-zivotopis.cz/select.png


Chamurappi
Profil
Reaguji na ineha:
ty dvě volby jsou mimo select - sou pod ním a select jako takový je prázdný
Nejprve přidáváš <div> (bez ukončovací značky), pak <select> (také bez ukončovací značky), pak <option>y neobalené do <select>u, pak ukončovací značku <select>u (která se ignoruje). Každé upravení innerHTML způsobí okamžitou změnu v DOMu a v něm nic jako neuzavřený element neexistuje — pokud přidáš začátek elemetu, přidá se celý element a jakékoliv další přidání bude až za tímto elementem.

Mimochodem, ta šířka 60px by měla určovat co? Rozměry textu nikdy neznáš, uživatel může mít jinou velikost písma.
Některé prohlížeče nepodporují událost onclick na <option>ech a řekl bych, že tuto nekompatibilitu jQuery neodstraňuje (i když by teoreticky mohlo).

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: