باستخدام asp.net، سيتم تشغيل الأحداث من جانب الخادم تلقائيًا عند تحديث الصفحة. لنأخذ مثالاً بسيطًا، مثل: صفحة التسجيل، بعد أن نملأ معلومات التسجيل، إذا ضغطنا على F5 للتحديث، فسيتم تشغيل حدث Button تلقائيًا، مما سيسبب مشكلة التسجيل مرة أخرى.
الحل السابق: الاستعلام باستخدام الكلمات الرئيسية، وإذا كان هناك أوجه تشابه، فسيطالب بأن هذا المستخدم موجود بالفعل.
ولكن هذا الحل لا يمكن استخدامه دون الاعتراف، وسوف يقدم مرة أخرى. وفي ضوء ذلك بحثت عن حل جديد ولحسن الحظ توصلت بنصيحة أحد الأصدقاء إلى مثل هذا الحل ولا بد أن يكون هناك حل أفضل ولن أتردد في تقديم النصيحة لك.
الحل: عند التحديث، التقط KeyPress واتركه يؤدي إلى أحداث أخرى غير مفيدة.
1. جافا سكريبت لالتقاط حدث F5
window.document.onkeydown = KeyStroke
function KeyStroke();
{
مفتاح فار = Event.keyCode;
events.srcElement.releaseCapture();
إذا (مفتاح == 116)
{
document.getElementById("Button1").click();
this.event.keyCode=0;
events.returnValue=false;
}
}
2. ضع زرًا على صفحة aspx
<asp:Button id="Button1" style="Z-INDEX: 102; LEFT: 344px; POSITION: مطلق; TOP: 408px; WIDTH: 0px;"
Text="Button"></asp:Button>
3. حدث الزر
باطلة خاصة Button1_Click(مرسل الكائن، System.EventArgs e)
{
Response.Write("لقد قمت بالضغط على المفتاح F5");
}
يمكن أن يحل حل "حفظ السيارة للحفاظ على المظهر الجميل" المشكلة الصغيرة المتمثلة في تشغيل الأحداث تلقائيًا للتحديث. إذا كان لدى أي شخص حل أفضل، فيرجى إبلاغي بذلك وسأكون ممتنًا للغاية.