سؤال

لقد وضعت مدقق النطاق في التحكم في مربع نص ASP.NET في صفحة الويب الخاصة بي ؛ كلما لم يجتمع النطاق ؛ سوف تصرف رسالة الخطأ ،

لكنه ينتقل إلى الصفحة التالية. كيف يمكنني منعه من الانتقال إلى الصفحة التالية بعد النقر فوق زر إرسال أثناء عدم استيفاء النطاق ؟؟

هل كانت مفيدة؟

المحلول

  • تأكد من أن زر الإرسال الخاص بك في نفس الشيء ValidationGroup كمصلحة النطاق الخاصة بك. هذا صحيح بشكل خاص إذا كان لديك أكثر من واحد ValidationGroup مُعرف.

  • تأكد من العقار CausesValidation لم يتم ضبطه على FALSE على الزر. النظام الأساسي True لذلك إذا لم يتم الإعلان عن الخاصية في ASPX أو الكود وراءك ، فيجب أن يطلق الزر تسلسل التحقق من الصحة.

  • إذا كنت لا تستخدم تدفق الصفحة العادي ، (أي الزر الخاص بك يحتوي على الخاصية UseSubmitBehvior ضبط ل False, ، أو في بعض الحالات ، عند استخدام عمليات الاسترداد Asych Ajax) ، ستحتاج إلى لف صفحتك تغيير الرمز في If كتلة التي تتحقق Page.IsValid قبل إطلاق النار.

  • تحقق مزدوج أن ال ControlToValidate تم تعيينه على عنصر التحكم الصحيح وأنه لا يحتوي على قيمة افتراضية تمرر التحقق من الصحة.

نصائح أخرى

شفرة؟

هل تقوم بالتقديم مباشرة إلى الصفحة التالية بدلاً من النشر إلى نفس الصفحة وإعادة التوجيه؟

هل تقوم بإعادة التوجيه في page_load ، والتي يحدث قبل تصديق?

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top