ورود

View Full Version : ست کردن session با کلیک بر روی لینک



فاطی.جدا
سه شنبه 01 بهمن 1392, 09:15 صبح
سلام .من میخوام وقتی روی لینک کلیک میکنم مقدار session برام ست بشه.اما هرکاری میکنم این عمل انجام نمیشه.

<a id="topicname" href="FrmAnswer.aspx" data-seq='<%# Eval("TID")%>' >

<%# Eval("F_Topic")%>

</a>



jquery:
$('#topicname').click(function (e) {

$.session.set("topicID", data('seq').val);
alert($.session.get("topicID"));


});

Javidhb
سه شنبه 01 بهمن 1392, 10:35 صبح
توی جاوااسکریپت، نمیتونید Session رو بخونید یا ست کنید...
اگه از این پلاگین (https://github.com/AlexChittock/JQuery-Session-Plugin) استفاده کردید: این پلاگین فقط برای کار کردن راحت با window.sessionStorage هست که توی مرورگر ذخیره میشه.. session توی سرور ذخیره میشه.

فاطی.جدا
سه شنبه 01 بهمن 1392, 10:43 صبح
یعنی هیچ روشی نیست که من متن لینک رو تو یه متغیر یا هرچیز دیگه ای ذخیره کنم؟

Javidhb
سه شنبه 01 بهمن 1392, 18:26 عصر
برای گرفتن متن لینک:

<a href="#">LINK1</a>

var linkText = $('a').text();
alert(linkText);


میتونید از متغییر، کوکی و یا webstorage استفاده کنید.

فاطی.جدا
پنج شنبه 03 بهمن 1392, 10:11 صبح
<a id="topicname" href="FrmAnswer.aspx" title='<%# Eval("TID")%>' data-seq='<%# Eval("TID")%>' >

<%# Eval("F_Topic")%>
</a>

$('#topicname').click(function () {
var linkText = $('a').text();
alert(linkText);
});

فاطی.جدا
پنج شنبه 03 بهمن 1392, 10:15 صبح
من با این روش فقط میتونم مقدار اولین رکورد گریدویو رو بخونم.باقی رکوردها عمل نمیکنه این کد

Javidhb
پنج شنبه 03 بهمن 1392, 12:10 عصر
باید در مورد id و class سرچ کنید...

id توی هر صفحه باید منحصر به فرد باشه ولی چندین المنت میتونن class مشابه داشته باشن.
کد شما هم داره با id (#) المنت رو انتخاب میکنه، و چون انتظار داره که فقط یه المنت با اون id وجود داشته باشه فقط اولین المنت رو بر میگردونه.
شما بجای id از کلاس(.) استفاده کنید... اینجوری یه آرایه از تمام المنتهایی که اون class رو دارن بهتون بر میگردونه و میتونید از طریق حلقه یا انتخابگرهای دیگه به همه رکوردها دسترسی داشته باشید.

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

<a class="topicname" href="FrmAnswer.aspx" title='<%# Eval("TID")%>' data-seq='<%# Eval("TID")%>' >
<%# Eval("F_Topic")%>
</a>

$('.topicname').click(function () {
var linkText = $(this).text();
alert(linkText);
});

فاطی.جدا
پنج شنبه 03 بهمن 1392, 12:57 عصر
واقعا ممنونم.خیلی لطف کردید.مشکل یک هفته ای من رو با جایگزینی یک # و . حل کردید.
اگر بخوام مقدار به دست اومده تو این قسمت رو به بخش کدنویسی ارسال کنم از چه طریقی میتونم؟

Javidhb
پنج شنبه 03 بهمن 1392, 13:45 عصر
اگه منظورتون اینه که بفرستید سمت سرور:
اینو ببینید (http://html.net/tutorials/asp/lesson10.asp)