PDA

View Full Version : خطاي ajax



xzxzxz
پنج شنبه 12 اردیبهشت 1387, 09:02 صبح
سلام
واقعا فوري به كمك نياز دارم
من دارم رو پروژه پايانيم كار ميكنم و از ajax استفاده مي كنم
وقتي يه دكمه تو UpdatePanel مي زارم و براي رويداد onclick اون فقط تابع را مي سازم وكدي نمي نويسم
با كليك روي دكمه پيام خطاي ضميمه شده ظاهر مي شه البته فقط تو IE اينجوريه و در FireFox حتي كدها هم بدون مشكل اجرا يم شن
خيلي search كردم و تغييرات در
EnablePartialRendering

تاثيري روي error نداشت
ولي تغيير EnableEventValidation صفحه باعث عدم اجراي دكمه و ايجاد خطا مي شد

golhay2
جمعه 13 اردیبهشت 1387, 09:37 صبح
كد صفحه خود را در اينجا بگذاريد تا بهتر بتوان راهنمائي كرد

eyes_shut_number1
جمعه 13 اردیبهشت 1387, 18:20 عصر
نیازی به گذاستن کد نسیت!
شما اگه از اول پروژه رو AjaxEnabled درست میکردی توی config یه تگ میذاششت که مشکلت حل میشد

eyes_shut_number1
جمعه 13 اردیبهشت 1387, 18:23 عصر
یک :: خطای sys is undefined
اول یک کمی در مورد پس زمینه کار که چه اتفاقی می افتد توضیج می دهم
وقتی که شما ScriptManager برروی صفحه قرار می دهید ASP.NET AJAX
کمی script برای بارگزاری در صفحه تولید می کند و مقداری script داخلی برای
شروع و اجرای برنامه
اگرشما سورس برنامه را ببیند شما چیزی شبیه این خواهید دید
کد:
<script type="text/javascript">Sys.WebForms.PageRequestManager._initialize('Scrip tManager1', document.getElementById('form1'));Sys.WebForms.Pag eRequestManager.getInstance()._updateControls([], [], [], 90);</script>
وقتی مروگر می خواهد این کد را اجرا کند انتظار دارد کد Sys.WebForms.PageRequestManager
جای تعریف شده باشد جایی که این کد را تعریف کرده و بارگزاری می کند
چیزی شبیه این است
کد:
<script src="/MyWebApp/ScriptResource.axd?[snip - long query string]" type="text/javascript"></script>
اگر برنامه نتواند این را بارگزاری کند
script engine نمی تواند این مشخصات را پیدا کند
Sys, Sys.WebForms, Sys.WebFormsPageRequestManager
درنتیجه برنامه این خطا را سبب می شود

حالا چرا مرورگر نمی تواند این مشخصات را بارگزاری کند؟ چند دلیل دارد ؟؟

1- مرورگر نمی تواند compressed script را بارگزاری کند

این خطا بیشتر در IE6 روی می دهد چگونه ان را تعمیر کنیم ؟؟
وب کانفیگ را به این صورت تغییر می دهید
کد:
<system.web.extensions><scripting><scriptResourceHandler enableCompression="false" enableCaching="true" /></scripting></system.web.extensions>
2- وب کانفیگ به خوبی پیکربندی نشده است

شما وب کانفیگ قرار داده شده در این قسمت را با وب کانفیگ خود مقایسه کنید
-C:\Program Files\Microsoft ASP.NET\ASP.NET 2.0 AJAX Extensions\v1.0.61025
و تغییرات را اعمال کنید

4- خطای 404 به خاطر ScriptResource.axd

برای برطرف کردن این خطا شما کد زیر را در سرور اجرا می کنید
کد:
C:\WINDOWS\Microsoft.Net\Framework\v2.0.50727. aspnet_regiis -i -enable
راه حل بعدی برای اینکار webresource.axdو ScriptResource.axd
یه حجم 0 کیلو بایت درست کنی در root بگذاری
به همین راحتی خطای فوق برطرف می شد

xzxzxz
شنبه 14 اردیبهشت 1387, 08:50 صبح
ممنون از دوستان

<system.web.extensions><scripting><scriptResourceH andler enableCompression="false" enableCaching="true" /></scripting></system.web.extensions>
تا حد زيادي كمكم كرد خيلي ممنونم از همه دوستان