لا يقوم onsubmit باستدعاء وظيفتي عند الضغط على Enter
-
28-10-2019 - |
سؤال
<form onsubmit="submit(); return false;" name="text" id="form" method="get">
<input type="feild" style="font-size: 150%;" id="field" name="field" value=""
onSubmit="this.value='';"/>
<input type="button" id="add" style="font-size: 150%;" value=" Add tally to score "/>
<input type="submit" value="submit" style="visibility:hidden" />
إذا قمت بتغيير "إرسال () ؛" إلى "تنبيه ('هنا') ؛" يدعو وظيفة التنبيه تمامًا.لماذا لا تستدعي وظيفة الإرسال؟
أريد أن يتم استدعاء الوظيفة عندما يضغط المستخدم على زر الإدخال.http://jsfiddle.net/kaninepete/JsAr4/
ملحوظة:الزر الموجود على الجانب مخصص لغرض مختلف، وليس جزءًا من المشكلة.يحررالمزيد من العمل، ومحاولة اتباع مثال المسيحيين أوصلني إلى هنا http://jsfiddle.net/kaninepete/MGxNG/
لا أرى لماذا يختلف هذا عن مثاله!كل ما أحصل عليه هو "{"خطأ":"الرجاء استخدام طلب البريد"} "وأعماله تمامًا.
المحلول
لا توجد طريقة للإرسال على عناصر الإدخال.
على الكمان، إذا قمت بتغيير النوع = "زر" إلى كتابة = "إرسال" على زر الإدخال، فسيتم استدعاء النموذج عند الضغط على الزر.
يحرر:
يبدو أن مشكلتك تكمن في شيئين.
واحد هو أن submit
هي طريقة أصلية في المتصفح.إذا قمت بتغيير الاسم على سبيل المثال. mySubmit
يحل المشكلة.
والثاني هو أن JSFiddle وضع كود js داخل النطاق.وهذا يعني أن الأساليب التي تحددها لن تكون متاحة خارج هذا النطاق.تتم إزالة هذا عن طريق جعل الطريقة عالمية:
window.mySubmit = function () {
alert('test');
}
كمان بلدي: http://jsfiddle.net/KrooniX/UttWF/
نصائح أخرى
حاولت التكاثر خارج jsfiddle ، وشعرت أنها تعمل كما هي.ربما لم أحصل على الشفرة كاملة؟
هذا ما استخدمته (حتى أزلت الزر الذي تمت مناقشته سابقًا).يعمل هذا عند الضغط على Enter في مربع النص (تم اختباره في FF).هل هناك شيء مفقود؟ Genacodicetagpre