۳ پیام نصری
کار نکردن تابع با آیدی تگ داده شده در هنگام اینتر زدن
امیر صالحی حل شده توسط امیر صالحی

وقتی که آیدی تگ اضافه کردن تسک هارو به این تابع میدم موقع اینتر زدن هیچ آلرتی رو نشون نمیده

 

 $('#addTaskInput').on('keypress',function(e) {
      if(e.which == 13) {
          alert('You pressed enter!');
      }
  });

اما در این حالت هیچ مشکلی نداره و به درستی کار میکنه  : 

$(document).on('keypress',function(e) {
      if(e.which == 13) {
          alert('You pressed enter!');
      }
  });

 

درود

توی حالت اول چون آیدی خود input دادید در واقع باید روی خود اون input دکمه enter زده بشه تا کار کنه، اما توی کد پایین شما enter رو روی کل document قرار دادید تا وقتی هر جای صفحه دکمه enter زده شد کار بکنه

امیر صالحی ۰۳ شهریور ۱۴۰۰، ۱۸:۳۲

فایل کامل زیب شده پروژه 

پیام نصری ۰۵ شهریور ۱۴۰۰، ۰۶:۵۰

باید اون inputی میخواید submit بشه رو داخل فرم قرار بدیم تا بتونیم با جاوااسریکت روش کیلک کنیم و از کد jquery زیر میتونیم استفاده کنیم

 

$(document).bind('keypress', function(e){
   if(e.which === 13) { // return
      $('#addTaskForm').submit();
   }
});

 

بهترین پاسخ
امیر صالحی ۱۶ شهریور ۱۴۰۰، ۱۷:۵۷