PDA

View Full Version : خالي كردن مقدار session در javascript



niloo17
یک شنبه 04 بهمن 1388, 11:55 صبح
سلام دوستان
من در برنامه يك تگ html دارم كه مي خوام با كليك بر رو ي ان مقدار session خالي بشه
ممنون مي شم اگه راهنماييم كنيد.

keyvan_n
یک شنبه 04 بهمن 1388, 11:58 صبح
دوست عزیز، Session فقط سمت سرور قابل دسترسی هست. پس با Java Script نمیشه دستکاریش کرد.

niloo17
یک شنبه 04 بهمن 1388, 12:26 عصر
ممنون از را هنماييتون
ژس چه جوري مي تونم موقع خروج مقدار session را خالي كنم ؟؟

keyvan_n
یک شنبه 04 بهمن 1388, 12:53 عصر
دستور زیر رو در جایی که میل دارید Session خالی بشه(در Code Behind)، بذارید:


Session.Clear();


البته توجه کنید که تمام اطلاعات موجود در Session از بین میره.
اگه فقط قصد دارید اطلاعات خاصی رو حذف کنید از دستور زیر استفاده کنید:


Session["Your Key"] = null;

arsalansalar
یک شنبه 04 بهمن 1388, 13:05 عصر
Session("your session") = Nothing

niloo17
یک شنبه 04 بهمن 1388, 13:41 عصر
ممنون از راهنماييتون ولي مشكل من اينه كه بايد با كليك بر روي تگ a مقدار خالي بشه

keyvan_n
یک شنبه 04 بهمن 1388, 14:04 عصر
بهتره به جای تگ a از asp:HyperLink استفاده کنید. در غیر این صورت باید در java script یک تابع بنویسید که عملیات doPostback رو انجام بده.
اگه نتونستید مشکلتون رو حل کنید، من تا چند ساعت دیگه باز هم میام و بیشتر راهنماییتون می کنم.

keyvan_n
یک شنبه 04 بهمن 1388, 23:48 عصر
راه حل مشکل شما اینه:
اول متد جاوا اسکریپت زیر رو جهت انجام PsotBack می نویسیم:


function CleareSession() {
__doPostBack('__Page', 'CleareSession');
}


تگ a به صورت زیر میشه:


<a href="javascript:CleareSession()" > Click </a>

بعد متد PageLoade رو به صورت زیر تغییر میدیم:


protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
{
string _eventArg = Request["__EVENTARGUMENT"];
if (_eventArg == "CleareSession")
{
Session.Clear();
}
}
}


موفق باشید.