قمت بعمل أنموذج بسيط جدا Web Form لاختبار ال RequiredFieldValidator وللأسف لم تظهر لي النتيجة كما يجب أن تظهر. تركيبة الأنموذج Web Form هي كالتالي:
1-حقل TextBox بإسم Name وهو الذي يقوم المستخدم بإدخال قيمة فيه. كما أنه من أجل التدقيق في هذه القيمة يتم استخدام طريقة التدقيق RequiredFieldValidator
2- RequiredFieldValidator بإسم RequiredFieldValidator1 وويقوم بتدقيق القيمة التي يدخلها المستخدم في Name ويقوم بإظهار * عندما يترك المستخدم الحقل Name من دون أي قيمة بالإضافة إلى رسالة ErrorMessage هي Enter Name أيضا حينما يترك المستخدم الحقل Name من دون قيمة
3-Button بإسم SendButton وهو الزر الذي يقوم المستخدم بالضغط عليه بعد إدخال القيمة في Name
المشكلة تتمثل في أنه بعد الضغط على الزر SendButton فقط يلاحظ ظهور * وعدم ظهور رسالة الخطأ ErrorMessage التي هي Enter Name وهي التي يجب أن تظهر حينما يترك المستخدم الحقل Name من دون قيمة. فيا ترى ما هو سبب عدم ظهور العبارة Enter Name ?
أخيرا ولكي تتضح الصورة أكثر، أرفق الكود الخاص بالنموذج أو ال Web Form
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="ValidationForm.aspx.vb" Inherits="About_ValidationForm" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>
</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="Name" runat="server" style="margin-left: 0px"
Width="110px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
ControlToValidate="Name" ErrorMessage="Enter Name">*</asp:RequiredFieldValidator>
<br />
<br />
</div>
<asp:Button ID="Send" runat="server"
style="font-weight: 700; margin-left: 286px" Text="SendButton" Width="243px" />
</form>
</body>
</html>