JCB: .Net: RequiredFieldValidator funzt nicht online

Juten Morgen!

Ich hab ein "Online-Problem" mit dem RequiredFieldValidator von ASP.Net. Um den Fehler genauer zu lokalisieren, hab ich mir eine einfache Testseite erstellt (Quellcode s.u.). Der RequiredFieldValidator1 soll überprüfen, ob die Textbox1 leer ist oder nicht. AFAIK validiert er mit clientseitig mit JS. Und soll es auch sein. Alles soweit in Ordnung. Es funktioniert auch auf dem localhost alles einwandfrei, nur wenn ich die Seite hochlade, funzt die Clientseitige-Validierung nicht mehr. Ich tendiere schon sehr stark dazu, dass es an dem Provider (www.qualityhosting.de) liegt. Aber das kann und darf ja nicht sein. Ist doch ein stinknormales Steuerelement. So, als hier noch kurz der Quellcode:

test.aspx:

<%@ Page Language="vb" AutoEventWireup="false" Codebehind="Test.aspx.vb" Inherits="LIDUWeb.Test"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <title>Test</title>
  <meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
  <meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1">
  <meta name="vs_defaultClientScript" content="JavaScript">
  <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
 </HEAD>
 <body MS_POSITIONING="GridLayout">
  <form id="Form1" method="post" runat="server">
   <asp:TextBox id="TextBox1" style="Z-INDEX: 101; LEFT: 264px; POSITION: absolute; TOP: 72px" runat="server"
    Width="80px" Height="40px"></asp:TextBox>
   <asp:RequiredFieldValidator id="RequiredFieldValidator1" style="Z-INDEX: 102; LEFT: 376px; POSITION: absolute; TOP: 88px"
    runat="server" Width="160px" Height="24px" ErrorMessage="Error" ControlToValidate="TextBox1"></asp:RequiredFieldValidator>
   <asp:Button id="Button1" style="Z-INDEX: 103; LEFT: 288px; POSITION: absolute; TOP: 192px" runat="server"
    Width="80px" Height="32px" Text="Button"></asp:Button>
  </form>
 </body>
</HTML>

Test.aspx.vb:

Public Class Test
    Inherits System.Web.UI.Page

#Region " Vom Web Form Designer generierter Code "

<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

End Sub
    Protected WithEvents TextBox1 As System.Web.UI.WebControls.TextBox
    Protected WithEvents RequiredFieldValidator1 As System.Web.UI.WebControls.RequiredFieldValidator
    Protected WithEvents Button1 As System.Web.UI.WebControls.Button

Private designerPlaceholderDeclaration As System.Object

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
        InitializeComponent()
    End Sub

#End Region

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If RequiredFieldValidator1.IsValid Then
            RegisterStartupScript("test", "<script language=JavaScript>alert('Eingabe gültig')</script>")
        End If
    End Sub
End Class

Wer sich das ganze online ansehen möchte, hier der Link: http://www.lidu.org/liduweb/test.aspx

Gruß,

Jan

PS: Der Browser mit dem ich teste ist der IE6.0.

  1. Moin!

    Fehler gefunden :o)!! Zum clientseitigen Valid. braucht man natürlich eine Clientscriptsprache (JS). Und dass wird hier mir der WebUIValidation.js gemacht. Die liegt im C:\WINDOWS\Microsoft.NET\Framework%FrameworkVersion%\ASP.NETClientFiles. Der localhost konnte natürlich darauf zugreifen. Online geht das aber "natürlich" nicht. Man brauch aber nur die Datei ("mit samt ihren Pfad angaben") ins Root-Verz. kopieren und dann gehts. Und nur wegen so nem bescheuerten Fehler bin ich seit gestern am verzeifeln ;)!

    Gruß,

    Jan

    PS: Vielen Dank an die Leute, die sich das "Problem-Posting" durchgelesen haben ;). Falls das überhaupt jemand getan hat ;).