Autor Zpráva
vlkodlak
Profil
Zdravím, narazil jsem, na pro mě „neřešitelný“ problém, který spočívá v následujícím:
Mám jednoduchou HTML stránku . V head přilinkují nějakou funkčnost v jQuery. A pokud vložím následující kus kódu, tak mi jQuery „nevidí“ nově vložený kód … prostě nespolupracuje. Tuším, že bych měl provést reaktivaci kódu, řičí stránce, aby reaktivovala JS / jQuery …. Ale po X probdělých nocích jsem přišel jen na to, že mi to jakžtakž funguje jen pokud JS vložím i s Kusem vkládaného kodu, ale to mi nevyhovuje.


jednoducha HTML stánka
<html>
    <head>…</head>
    <body>
        ….
        <div id=”telo”></div>
        …
    </body>
</html>

kus vkladaného kodu…do DIV.TELO
<div class="col-md-6">
  zařaženo :
  <ul id="useOption" class="connectedSortable">      
          <li class="ui-state-default">Item 1</li>
     <li class="ui-state-default">Item 2</li>
  </ul>
</div>

nejaka funkčnost v jQuery, kterou prilinkovavam v HEAD
$(document).ready(function () {
 ….
   $("body").click(function () {
      console.log('click body');
   });
….
a toto mi neraguje, u nove vloženeho
   $("#posibleOption, #useOption").click(function () {
      console.log('click');
   });
….
}
Kajman
Profil
Je to podobný problém jako dříve
po provedeni kódu jQuery se vykoná pouze jednou
vlkodlak
Profil
Kajman:
děkuji, asi jsem odsouzen dělat stejné chyby
vlkodlak
Profil
Kajman:
Ahoj, prosím, ještě o pomoc. Přikládám živé ukázky:
- Z tohoto jsem vyšel jqueryui.com/sortable/#connect-lists
- Zde je převedeno do živé ukázky Živá ukázka

- zde je to, co s čím potřebuji pomoc Živá ukázka
juriad
Profil
Živá ukázka
Stačí spustit registraci sortable v rámci fukce vlozObsah.

Mimochodem, ten callback pak už není potřeba, protože se to vykoná až po kliknutí.
vlkodlak
Profil
Děkuji, dobrý a funkční nápad, pro mě použitelný. A pokud tomu správně rozumím : je to řešení hlavně pro vložení jednoho řádku (pár nových řádku). A při každém vložení nového řádku se mi přidá další stejná funkce do paměti? Nebylo by lepší, právě, to řešit pomoci jednoho callback-u?

Byt je zajímavé, že pokud .html změním na .append stálé to funguje dle očekávaní. Živá ukázka
juriad
Profil
Těžko říct, co přesně se stane v jQuery, pokud zavoláš sortable znovu na stejném elementu, ale jak říkáš, funguje to. Vzhledem k tomu, že přidáváš element s id a id má být v dokumentu unikátní, nemyslel jsem si, že budeš chtít něco takového volat dvakrát.

Chceš po druhém přidání obsahu mít propojené všechny seznamy, nebo vždy jen ty nové?
vlkodlak
Profil
juriad:

Ne ne, odpověděl jsi a vyřešil můj dotaz, děkuji.

S tím .appendem mně napadlo pro lepší porozumění a pro připadané budoucí rozšířeni neb teď mi to stačí, ale v budoucnu pokud přidám nový kus HMTL kódu budu moci ho „oživit“ právě pomoci document.on (viz odkaz na dřívější můj dotaz ohledně .datapickeru a odpověď od Kajmana)


BTW: rešeni s document.on

$(document).on("click",  function() {
    $("#posibleOption, #useOption").sortable({
        connectWith: ".connectedSortable"
    }).disableSelection();
});

Živá ukázka

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