C# týden Slevový týden - Březen
Využij náš slevový týden a získej až 30 % bodů navíc zdarma! Zároveň také probíhá C# týden se slevou na e-learning až 80 %
Hledáme fulltime programátora do ITnetwork týmu -100% homeoffice, 100% časově flexibilní #bezdeadlinu Mám zájem!
Avatar
Karel Láska
Člen
Avatar
Karel Láska:15. března 10:28

Hoj, na stránce mám použitý prvek ajax - htmleditorextender. Na stránce je mnoho dalších prvků, mimo jiné i gridview. Pokud je do textboxu (pro zmíněný htmleditor) vložen text, který na prvních pěti pozicích má pouze znaky, je vše v pořádku. Pokud je tam jakýkoli html tag, resp ostrá závorka, scripty na této stránce přestanou reagovat.(Delete button v gridu).

Zkusil jsem: Zajímavé je, že tlačítko funguje do chvíle, kdy ostrou závorku nedoplním.
Jakmile ji odmažu, vše je jak má být.
i bez refresh stránky, nebo uložení.

Chci docílit: Jedná se o jakousi knowlidgebase pro opravu strojů, souhrn návodů a jiných návodu v naší firmě

 
Odpovědět
15. března 10:28
Avatar
Bugmaster
Člen
Avatar
Bugmaster:15. března 15:49

S html editorem / extendrem jsem měl bohužel taky něco do činění (a od té doby se tomu úspěšně vyhýbám).

Nevím, v čem konkrétně vězí tenhle problém, napíšu ale několi postřehů/návrhů:

  • Zkoušel jsi HtmlEditor.Sa­nitizer? Jestli ne, tak ho zkus nainstalovat a zapnout. Jestli ho máš nainstalovanej a zaplej, tak ho zase zkuz vypnout.
  • Podívej se po chybách ve vývojářských nastrojích v prolížeči (F12), v záložce konzole.
  • Může taky dost záležet na prohlížeči, resp. nastavení kompatibility v meta tagu. Vzpomínám si, že jsem v IE narazil úplně absrudní problém, jehož řešení zavíselo právě na nastavení kompatibility.
  • Zkus do ScriptManageru přidat atribut ScriptMode="Re­lease", co to udělá (nejspíš nic).
  • Zkus ten problém co nejvíce izolovat. Vytvoř si úplně nový projekt, vlož tam tanhle html editor a postupně se zkoušej přiblížit k tomu, co už máš. Na začátku to téměř jistě bude fungovat. Pokud se to v určité chvíli rozbije, tak víš, co to způsobilo. Pokud to bude fungovat a dělat vše, co chceš, hledej rozdíl.

Moje zkušenost je taková, že problémy tohoto rázu je dost duchařina :(

Jestli najdeš příčinu a/nebo řešení, tak to sem určitě napiš. Ať se poučít i další lidé, kteří narazí na stejným problém.

Editováno 15. března 15:51
 
Nahoru Odpovědět
15. března 15:49
Avatar
Karel Láska
Člen
Avatar
Karel Láska:25. března 15:09

Zdarec,
díky za náměty.

  • HTML sanitizer jsem stahl, nepodařilo se mi jej bohužel i přes cca 2 hodinovou snahu nastavit.
  • Žádný chyby nenalezny
  • Ověřeno v IE, Edge i chrome
  • ScriptMode ="Release" nastaen, nic

Poslední - odebrány veškeré prvky ze srtánky, krom zmíněných textboxů a nic.
V případě odebrání textboxu, vše OK.

 
Nahoru Odpovědět
25. března 15:09
Avatar
Bugmaster
Člen
Avatar
Odpovídá na Karel Láska
Bugmaster:26. března 17:50

Jak to přesně vypadá?

Z toho, co jsi psal, vím, že tam někde máš GridView a TextBox rozšířený na HtmlEditor.

Z toho mě napadají tři možnosti: (1) textbox máš před gridem, (2) v gridu nebo (3) za gridem. Co z toho?

Editováno 26. března 17:51
 
Nahoru Odpovědět
26. března 17:50
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Karel Láska
Člen
Avatar
Karel Láska:26. března 18:33

Aktuálně jsem stránku zkrátil pouze na tyto 2 prvky.
Funguje stále stejně. Tedy jako že nefunguje .-)
Text box je před tabulkou. Vyzkoušeno i přehození. Kód přiložen.
Kod

 
Nahoru Odpovědět
26. března 18:33
Avatar
Bugmaster
Člen
Avatar
Odpovídá na Karel Láska
Bugmaster:26. března 20:03

Takhle v tom žádný očividný problém nevidím.

Jen mě trochu zarazilo tohle:

<asp:TextBox ... Text="<b>řešení</b>"  />

Čekal bych v tom atributu místo ostrých závorek entity.

Nicméně, to zřejmě problém taky není.

Tady jsem vytvořil v principu ten samej případ, ale v novém projektu.

Buď to funguje, nebo to neumím navodit.

Můžeš si to zkusit stáhnout a hledat, proč to funguje. Obávám se, že víc ti neporadím :/

 
Nahoru Odpovědět
26. března 20:03
Avatar
Bugmaster
Člen
Avatar
Odpovídá na Karel Láska
Bugmaster:26. března 20:13

Ještě jsem si všim, že máš AjaxControlToolkit registrovanej na strínce s tagPrefixem jako asp. Přidáváš to ale z prefixu ajaxToolkit.

To je divný.

Tipnul bych si, že prefix ajaxToolkit máš definovanej globálně ve web.config. Jestli to tak je, pak ale nemusíš regitrovat na stránce.

Zkus umazat ten řádek <%@ Register..., jestli to nehapruje kvuli tomu.

 
Nahoru Odpovědět
26. března 20:13
Avatar
Karel Láska
Člen
Avatar
Karel Láska:27. března 11:08

Díky za pomoc...
Tvůj projekt mě funguje, jakmile jej vložím do svého, přestane.
Dle rady odebrán <%@ Register..., Nic
Odmazáno i prefix ajaxToolkit. Nic
Zkusil jsem odstranit HtmlEditorExtender aby zůstal jen textbox.
VYskočila mě chyba o zabezpečení, říkal jsem si heuréka.
Odstraněno v direktivě stránky pomocí - validateReques­t="false"

A zas nic. Už jsem na tom strávil moc času, budu muset pokročit. Takže zvažuji možnost, že místo textboxu dám label, a když někdo bude editovat, skryji gridview :-D

 
Nahoru Odpovědět
27. března 11:08
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.