Autor Zpráva
Magnus123
Profil
Ahoj,

když přidávám nové inputy pomocí Javascriptu, je nějaký snadný způsob, jak zachovat hodnoty aktuálních inputů?
Pro příklad vyplním input č. 1. Poté pomocí JS (innerHTML nebo přes appendChild) přidám další input č. 2. Zde nastává problém, že se vyplněná hodnota inputu č. 1 smaže.

Pojmem "snadný způsob" mám na mysli to, abych si nemusel všechny hodnoty ukládat do pole a po přidání inputu je zase všechny vypisovat.

Díky moc!
Antik4
Profil
Například JsFiddle
Magnus123
Profil
Antik4:
Super, ještě jednou děkuji.
Chamurappi
Profil
Reaguji na Magnuse123:
Poté pomocí JS (innerHTML nebo přes appendChild) přidám další input
Pokud ho přidáš pomocí appendChild, tak se ten první nesmaže. Ztrátu informací může způsobovat innerHTML, protože při přečtení se převádí vnitřek DOMu na HTML a atribut value nemusí obsahovat hodnotu. Chceš-li měnit innerHTML, měň ho u něčeho, čemu nevadí zrušení/znovuvytvoření.


Reaguji na Antika4:
Proč všude píšeš řešení závislá na jQuery? V tomto případě tazatel používá pojmy, ze kterých není zjevné, že už by jQuery načítal.
Magnus123
Profil
Chamurappi:
Též děkuji za odpověď, pomohlo mi to nakonec více. Mylně jsem myslel, že se to smaže i při použití appendChild, protože jsem přes innerHTML přidával ještě něco jiného.
Antik4
Profil
Chamurappi:
Proč všude píšeš řešení závislá na jQuery?
Protože rád používám tuto knihovnu. Když ti to vadí, tak to tady přestávám psát v této knihovně, pokud si to uživatel výslovně nežádá.

Magnus123:
Poté pomocí JS (innerHTML nebo přes appendChild) přidám další input
Promiň nějak jsem nezaregistroval tuto větu.

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: