Rammi.cz

Rammi.cz náhodný obrázek

Nefunkční client side validace v .NET

Únor 28th, 2005 · komentáře 2 · Programování

Už několikrát se mi stalo, že mi zničehonic přestala fungovat client side validace v C# webové aplikaci. Hrál jsem si s tím tak dlouho až jsem našel řešení.
v adresáři
[ROOT]\aspnet_client\system_web\1_1_4322\
je soubor:
WebUIValidation.js
a v něm je funkce
function ValidatorCommonOnSubmit() {
event.returnValue = !Page_BlockSubmit;
Page_BlockSubmit = false;
}

Mé řešení je sice o řádek delší, a definuje navíc jednu proměnnou, ale zato bez problémů funguje 🙂 takže tuto funkci přepište aby vypadala takto:
function ValidatorCommonOnSubmit() {
var retVal = !Page_BlockSubmit;
Page_BlockSubmit = false;
return retVal;
}

Update: Jak říká Altair, zkuste prvně v příkazovém řádku .NET spustit
aspnet_regiis -c
Třeba to tento problém vyřeší.

Tagy:

2 komentáře ↓

  • Michal Altair Valášek

    Tento problém je způsobem SP1 pro .NET Framework. Jeho instalace změní .NET runtime, ale ne klientské skripty všude. Řešením je spustit na serveru aspnet_regiis -c. Ruční modifikaci standardních skriptů výrazně nedoporučuji.

  • Rammi

    to jsem samozřejmě zkoušel, problem ale je, že mi ale aspnet_regiis -c nefunguje 🙁
    Můj účet ma administrátorská práva, ale i přesto dostanu hlášku:

    Start copying the ASP.NET client side script files for this version (1.1.4322.0)
    .
    An error has occurred (0x80070005).
    You must have administrative rights on this machine in order to run this tool.

    A tak jsem to vyřešil touto cestou. Celý adresář ASP_CLIENT mám stejně pod source control. Nechci se dočkat nějakých překvapení při updatech a tak mám raději client side scripty uložené jako součást projektu.

Co si myslíš ty?

Copyright Abago Holding s.r.o.,
všechna práva vyhrazena.
Navštivte také další projekty: Služby:  Digi Reality - Realitní vyhledávač | Ušetřím.cz - Vyhledávač cen | Inzerce Dýně.cz - Inzerce zdarma |
Zábava: PeckaSMS.cz - vyhrajte super ceny | 101her.cz - Online hry zdarma |
TOPlist TOPlist