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. marca 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).

Skúsil som: 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í.

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

 
Odpovedať
15. marca 10:28
Avatar
Bugmaster
Člen
Avatar
Bugmaster:15. marca 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.

Editované 15. marca 15:51
 
Hore Odpovedať
15. marca 15:49
Avatar
Karel Láska
Člen
Avatar
Karel Láska:25. marca 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.

 
Hore Odpovedať
25. marca 15:09
Avatar
Bugmaster
Člen
Avatar
Odpovedá na Karel Láska
Bugmaster:26. marca 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?

Editované 26. marca 17:51
 
Hore Odpovedať
26. marca 17:50
Tento výukový obsah pomáhajú rozvíjať nasledujúce firmy, ktoré možno hľadajú práve teba!
Avatar
Karel Láska
Člen
Avatar
Karel Láska:26. marca 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

 
Hore Odpovedať
26. marca 18:33
Avatar
Bugmaster
Člen
Avatar
Odpovedá na Karel Láska
Bugmaster:26. marca 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 :/

 
Hore Odpovedať
26. marca 20:03
Avatar
Bugmaster
Člen
Avatar
Odpovedá na Karel Láska
Bugmaster:26. marca 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.

 
Hore Odpovedať
26. marca 20:13
Avatar
Karel Láska
Člen
Avatar
Karel Láska:27. marca 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

 
Hore Odpovedať
27. marca 11:08
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 8 správy z 8.