Ihre Rechtfertigung ist in Ordnung. Allerdings haben Sie muss implementieren Sie die Validierung auf der Serverseite, da es sonst sehr einfach ist, Ihren Code zu missbrauchen, indem Sie einfach JavaScript deaktivieren.
Nein, wenn man es "unmöglich" macht, Daten ohne JavaScript zu übermitteln, wird das Problem nicht gelöst.
Aus persönlicher Erfahrung denke ich, dass die meisten Internetnutzer heutzutage JS aktiviert haben. Der Teil der Nutzer, der Probleme mit JS-lastigen Seiten haben könnte, sind mobile Nutzer. Wenn Sie diese also nicht erreichen müssen, sollte es wahrscheinlich kein großes Problem sein.
Der einfachste Weg, JS mit nur einer einzigen Weiterleitung zu bestimmen, wäre, ein Cookie mit JavaScript-Code zu setzen (document.cookie) und dann die oben erwähnte window.location für die Weiterleitung zu verwenden. Danach sollte der Server in der Lage sein, das von JS gesetzte Cookie zu lesen, vorausgesetzt, es ist aktiviert.
Auch wenn es ziemlich schwierig ist, Validierungsregeln und andere Logik automatisch auf dem Server und dem Client mit Technologie wie C# zu teilen, würde ich vorschlagen, sich Aptana Jaxer anzusehen. Jaxer ist ein JavaScript-basiertes, serverseitiges Framework, das es Ihnen unter anderem ermöglicht, denselben JavaScript-Code sowohl auf dem Client als auch auf dem Server zu verwenden. Sehr schön, wenn Sie auf dem Client validieren wollen, aber Ihre Validierungsregeln nicht zweimal schreiben wollen!