English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
اليوم، عند استخدام ajax للحصول على بيانات من الخادم، ظهر خطأ بتحذير رمز الحالة 0، ويستخدم الخادم معمارية spring mvc.
ماذا يعني رمز الحالة 0؟ بحثت في ذلك، وتبين أنه يعني (غير مهيأ) أي لم يتم استدعاء طريقة send()، كان كودي السابق كالتالي:
$.ajax({ url:"test", type:"post", data:{ blogTitle : $("#form1 input").val(), blogType : $("#form1 option:selected").val(), article : htmlcontent dataType: "json", success: function(data,textStatus){ if(data.flag == "success"){ alert("موفقیت در انتشار!"); window.location.href = 'http://www.baidu.com'; } error: function(XMLHttpRequest, textStatus, errorThrown){ alert(XMLHttpRequest.status); alert(XMLHttpRequest.readyState); alert(textStatus); } });
التحقق بعناية، لا يبدو أن هناك أي شيء خاطئ، وبالإضافة إلى ذلك، يمكن استقبال البيانات المرسلة من قبل الخادم بشكل طبيعي، مما يعني أن ajax قد أرسل البيانات، ويوجد أدناه معلومات المتغيرات التي تم طباعتها من قبل الخادم
بعد التفكير مرة أخرى، تبين أن المشكلة تكمن في النموذج:
<form onsubmit="addBlog();"> //تم حذف النص هنا <button type="submit">نشر المدونة</button> </form>
يمكنك رؤية أنني أضفت خاصية type = "submit" إلى علامة button، ولكن هذا سينتج عنه طلب جديد من نوع submit، حيث أن form ينتج طلب submit تلقائيًا عند النقر على button، ولكن عند استخدام type = "submit"، يتم إجراء طلب submit جديد مرة أخرى، مما يؤدي إلى تغيير أحداث form قبل إكمال ajax.
الحل: أعد كتابة الكود السابق كالتالي:
<form onsubmit="return false"> //تم حذف النص هنا <button type="addBlog()">نشر المدونة</button>
الآن، هذا المقال السريع لحل مشكلة فشل حالة رمز الخطأ لطلب إي إكس إي إس 0 هو كل ما أشاركه معكم، آمل أن يكون هذا مرجعًا لكم، وأتمنى أن تشجعوا على دعم تعليمات النفخ.
بيان: محتوى هذا المقال تم جمعه من الإنترنت، ويعود حقوق الطبع والنشر إلى المالك الأصلي، تم جمع المحتوى من قبل المستخدمين عبر الإنترنت بطرق متفرقة، ويملك هذا الموقع حقوق الملكية، لم يتم تعديل المحتوى بشكل يدوي، ولا يتحمل هذا الموقع أي مسؤولية قانونية مرتبطة بذلك. إذا اكتشفت أي محتوى يخالف حقوق النسخ، فالرجاء إرسال بريد إلكتروني إلى: notice#oldtoolbag.com (الرجاء استبدال # بـ @ عند إرسال البريد الإلكتروني) لإبلاغنا، وقدم الدليل على هذا الاشتباه، وسنقوم بإزالة المحتوى المزعوم فور التحقق منه.