يتم تشغيل وظيفة validator() عند النقر على زر \\\"التحقق\\\". إليك ما يحدث:

  1. عند هذه النقطة، من المحتمل أن يكون المستند قد انتهى من التحميل، مما يعني أن دفق المستند مغلق.
  2. استدعاء document.write() يؤدي تلقائيًا إلى تشغيل document.open( )، الذي يقوم بمسح المستند الحالي، وإزالة كافة العناصر الموجودة.
  3. وبالتالي، يتم عرض النص المحدد في document.write() في المستند الفارغ الآن.

وبالتالي، تتم إزالة عناصر النموذج (مربع الاختيار والزر) من الصفحة لأنه يتم تحديث المستند بأكمله، واستبدال المحتويات السابقة بمخرجات document.write().

لذلك، عند العمل مع document.write() ، من الضروري التأكد من بقاء تدفق المستند مفتوحًا باستخدام document.open()‎ بشكل صريح قبل الكتابة إليه. وإلا فإن السلوك غير المتوقع لمسح المستند يمكن أن يعطل الوظيفة المقصودة.

","image":"http://www.luping.net/uploads/20241031/17303378466722dc365be49.jpg","datePublished":"2024-11-08T15:59:11+08:00","dateModified":"2024-11-08T15:59:11+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > لماذا يقوم document.write() بمسح الصفحة؟

لماذا يقوم document.write() بمسح الصفحة؟

تم النشر بتاريخ 2024-11-08
تصفح:625

Why Does document.write() Clear the Page?

لماذا يقوم Document.write بمسح الصفحة؟

عند استخدام طريقة document.write() في JavaScript، غالبًا ما يواجه المبرمجون مشكلة غريبة السلوك: قد يؤدي استدعاء document.write() ضمن معالج الأحداث، مثل onClick، إلى مسح المستند.

لفهم هذه النتيجة غير المتوقعة، من الضروري فهم طبيعة document.write(). تكتب هذه الوظيفة في دفق المستند، وهو التدفق المستمر للبيانات التي تمثل المستند الذي يتم عرضه في المتصفح.

في مثال التعليمات البرمجية المقدم:

يتم تشغيل وظيفة validator() عند النقر على زر "التحقق". إليك ما يحدث:

  1. عند هذه النقطة، من المحتمل أن يكون المستند قد انتهى من التحميل، مما يعني أن دفق المستند مغلق.
  2. استدعاء document.write() يؤدي تلقائيًا إلى تشغيل document.open( )، الذي يقوم بمسح المستند الحالي، وإزالة كافة العناصر الموجودة.
  3. وبالتالي، يتم عرض النص المحدد في document.write() في المستند الفارغ الآن.

وبالتالي، تتم إزالة عناصر النموذج (مربع الاختيار والزر) من الصفحة لأنه يتم تحديث المستند بأكمله، واستبدال المحتويات السابقة بمخرجات document.write().

لذلك، عند العمل مع document.write() ، من الضروري التأكد من بقاء تدفق المستند مفتوحًا باستخدام document.open()‎ بشكل صريح قبل الكتابة إليه. وإلا فإن السلوك غير المتوقع لمسح المستند يمكن أن يعطل الوظيفة المقصودة.

بيان الافراج أعيد طبع هذه المقالة على: 1729722995 في حالة وجود أي انتهاك، يرجى الاتصال بـ [email protected] لحذفها
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3