سؤال

ولدي مجموعة من مربعات النص وزر حفظ لتحديث شيء. عند النقر فوق حفظ لدي التعليمات البرمجية التي تحدد ما إذا كانت تمتلئ بشكل صحيح في، في التعليمة البرمجية خلف الملف.

وإذا لم تكن مملوءة بشكل صحيح في، أريد أن عرض رسالة خطأ في شكل تنبيه.

ما هي أفضل طريقة للقيام بذلك؟ الضغط على زر الواضح يجعل إعادة النشر الصفحة، لذلك فكرت في إضافة شيء إلى URL مثل mypage.aspx?errormessage=blahblah ولكن أنا لا أعرف إذا كان هذا هو أفضل وسيلة أو حتى كيفية القيام بذلك ...

وأي اقتراحات؟

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

المحلول

والتنبيهات مشروط سيئة، وكذلك إعادات النشر. في محاولة للتحقق أكبر قدر ممكن على العميل دون ذهابا وإيابا إلى الخادم. انظر الإضافات مسج التحقق للحصول على وسيلة أقل تدخلا من التحقق من الصحة.

نصائح أخرى

هل يمكنك استخدام CustomValidator لتحريك العميل النصي الجانب الذي يظهر مربع التنبيه؟

هل يمكن استخدام الأسلوب ClientScript.RegisterStartupScript () في خطأ جانب الملقم معالجة التعليمات البرمجية لكتابة قصاصة جافا سكريبت الذي يدعو تنبيه ( 'رسالة')، شيئا من هذا القبيل

private void ShowErrorMessage(string message)
{
    string script = "alert('" + message + "');";
    ClientScript.RegisterStartupScript(typeof(MyPage), "errorScript", script, true);
}

ولكن أنصح لك استخدام مدقق بدلا من ذلك. إذا قمت بتطبيق المصادقة المخصصة الخاصة بك، يمكنك جعلها تنبعث منها نصي من جانب العميل التي يمكن تشغيلها قبل تقديم، لتجنب إعادة النشر تماما.

ووالشيء الجيد حول المصادقون هو أن رسائل الخطأ التي يمكن عرضها في ValidatorSummary على الصفحة، وتجنب مربع التنبيه القبيح.

وقبل كل شيء وأنا لا أوصي يظهر مربع تنبيه مشروط للمستخدم.

ويمكنك الاتصال جافا سكريبت وظيفة من التعليمات البرمجية جانب الملقم وفي أن الوظيفة التي يمكن أن تخرج الخطأ.

وأو يمكنك إصدار طلب AJAX وبعد التحقق من الصحة على جانب الملقم يمكنك إرسالها مرة أخرى ردا على العميل.

وتحكم التحقق من الصحة ASP.NET المختلفة ل(مع التحقق من جانب العميل تمكين)، إلى جانب رسائل الخطأ المناسبة و / أو رسالة موجزة سوف تكون جيدة بما فيه الكفاية بالنسبة لمعظم السيناريوهات.

ل"AJAX يشعر والسلوك"، ووضع الضوابط إلى updatepanel ستكون سهلة التنفيذ أيضا.

استخدم أيها العجوز المصادقون بقدر ما POSS، فإنها تقدم بها بعض جافا سكريبت إلى العميل حتى يو يمكن أن تفعل الكثير من التحقق من صحة استخدام هذه الضوابط وفقط عندما تكون كل راض فإنه لا يسمح الصفحة لتقديم.

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

ويمكن التحقق من صحة الإدخال باستخدام التعابير العادية، تأكد من حقل له قيمة، وهناك عدد قليل من أكثر أيضا.

وثم هناك خاصية لإعلان 'الرسالة' والتحكم لإظهار كافة الرسائل المصادقة. كل حفيف جدا ويبنى الحق في IDE.

والذهاب تحقق من الضوابط المصادقة.

وحاول التعليمة البرمجية التالية في الحدث انقر على زر الخاص بك:

string strErr="Error!";//Put your error message here
ClientScript.RegisterStartupScript(GetType(), "scrptName", "javascript: alert('"+strErr+"'); ", true);

ووسوف تظهر رسالة تنبيه.

وعدا ذلك وضع ملصق على صفحة aspx وتعيين مرئية كاذبة في الحدث Page_Load. عندما يحدث خطأ في الحدث الزر الخاص بك تعيين الرؤية التسمية 'صحيح' وملء نص التسمية مع رسالة الخطأ.

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