دسته بندی ها
15:15 1401/06/11

خطای Function is not defined در جاوااسکریپت

مشخصات سوال کننده :
کاربر : hastia     امتیاز کاربر : 1     رتبه کاربر : 150
دسته بندی : جاوا اسکریپت جی کوئری

به این سوال امتیاز بدهید    ‎−1
تعداد بازدید این سوال : 2404
2 نظر
hamid_b : من فکر میکنم شما باید بیشتر در مورد جی کوئری و ایجکس مطالعه کنید. اگر میخواید بعد از ثبت اطلاعات یک پیغام نمایش بدید باید اطلاعات رو توسط Ajax به سمت سرور ارسال کنید نه این روشی که الان نوشتید.

امتیاز کاربر : 510   رتبه کاربر : 4   تاریخ ثبت : 09:38 1401/06/11
chipset : علت مشخصه. اون تابع show Message رو نمیتونه پیدا کنه . یا آدرس درست به صفحه ویو ندادین و یا اینکه اون تابع پاک شده و وجود نداره . مجددا بررسی کنید این موارد رو . بعنوان یه راهکار دیگه میتونید اون تابع رو بصورت تگ script تو فایل ویو منتقل کنید و یا از ابتدا بنویسیدش.

امتیاز کاربر : 0   رتبه کاربر : 7020   تاریخ ثبت : 11:47 1401/06/13
پاسخ دهنده : hamid_b 19:58 1401/06/11

چند نکته رو بگم اول اینکه پلاگین های جاوااسکریپت یا جی کوئری ربطی به اینکه پروژه شما با Asp هست یا Php یا ... نداره چون دستورات جاوااسکریپت جزو دستورات بخش کلاینت هست و در مرورگر کاربر اجرا میشه.

شما بهتر بود کدهایی که نوشتید رو به طور خطلاصه قرار می دادید. ولی با توجه به متن خطا شما احتمالا یک تابع به نام ShowMessage رو صدا زدید. (احتمالا از طریق یک تگ a یا button این تابع صدا زده شده.) ولی چنین تابعی تعریف نشده. به کد زیر دقت کنید :

<button id='btn1' onClick='ShowMessage()' >Click Me ... </button>

<script>
   function ShowMessage()
   {
      alert('Hello');
   }
</script>

در کد بالا در تگ button یک متد به نام ShowMessage صدا زده شده و کدهای جاوااسکریپت هم دقیقا این متد نوشته شده.

البته چند نکته هم هست : اینکه شما میفرمایید از جی کوئری ورژن قدیمی هم استفاده شده ممکنه علت خطا باشه. باید بررسی کنید پلاگینی که استفاده کردید از چه ورژنی از جاوااسکریپت استفاده میکنه و شما هم از همون ورژن استفاده کنید.

به این پاسخ امتیاز بدهید    1
امتیاز: 510 رتبه: 4
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود