اذهب إلى المحتوى
  • 0

مشكلة Identifier 'form' has already been declared في JavaScript

محمد القحطاني17

السؤال

في صفحة html لدي كودين جافا سكربت منفصلين عن بعض واحد في الاعلى والاخر في الاسفل لكنهم لايعملو الا عند حذف كود جافا سكربت واحد، عندما احذف كود جافا سكربت الاول يعمل الثاني واذا حذفت الثاني يعمل الاول واذا لم احذف اي احد منهم جميعهم لايعملو.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 2
بتاريخ 26 دقائق مضت قال محمد القحطاني17:

هذي الملفات، عند تصغير الشاشة الى 375px يظهر شريط فوق في اليسار، كود جافا سكربت الاول يقوم بتشغيله لفتح القائمه، كود جافا سكربت الذي في الاسفل يقوم ب اظهار جملة Thanks عند ارسال الشكوى، لكن اكواد الجافا سكربت لا تعمل الا عند حذف احدهما

FeedBack.html

plants_style2.css

لديك مُشكلة في المُتغير form حيث إستخدمت الإسم form في تعريفك للمُتغير في الأعلى:

const form = document.querySelector("form");

إستخدمت هنا الكلمة المحجوزة const لتعريف المتغير فأصبح ثابت لا يُمكن إستخدام نفس الإسم لتعريف مُتغير بنفس الإسم لذلك عند تعريفك للمُتغير مرة أخرى:

var form = document.getElementById("feed-back");

أعطى خطأ وسبب المُشكلة.

لحل المُشكلة قم بتغيير إسم المتغير في الأسفل إلى إسم آخر:

var feedForm = document.getElementById("feed-back");

و إستعمال نفس الإسم:

var feedForm = document.getElementById("feed-back");

async function handleSubmit(event) {
  event.preventDefault();
  var status = document.getElementById("status");
  var data = new FormData(event.target);
  fetch(event.target.action, {
    method: feedForm.method,
    body: data,
    headers: {
      'Accept': 'application/json'
    }
  }).then(response => {
    status.classList.add('success');
    status.innerHTML = "Thanks We will respond as soon as possible!";
    feedForm.reset()
  }).catch(error => {
    status.classList.add('error');
    status.innerHTML = "Oops! There was a problem submitting your form"
  });
}
feedForm.addEventListener("submit", handleSubmit)

أيضاً أنصحك بوضع الأكواد مع بعضهم في الأسفل و نضعهم بداخل:

document.addEventListener("DOMContentLoaded", function (event) {
  
});

الملف بعد التعديل: FeedBack.html

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

هذي الملفات، عند تصغير الشاشة الى 375px يظهر شريط فوق في اليسار، كود جافا سكربت الاول يقوم بتشغيله لفتح القائمه، كود جافا سكربت الذي في الاسفل يقوم ب اظهار جملة Thanks عند ارسال الشكوى، لكن اكواد الجافا سكربت لا تعمل الا عند حذف احدهما

FeedBack.html

plants_style2.css

تم التعديل في بواسطة محمد القحطاني17
خطا
رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...