منتخب بازارچه

جاوا اسکریپت و asp

akram.salimi

کاربر تازه وارد
تاریخ عضویت
24 جولای 2006
نوشته‌ها
39
لایک‌ها
0
محل سکونت
مشهد
سلام
یه کدی دارم می نویسم که توش مجبورم از جاوااسکریپت و ای اس پی همزمان استفاده کنم
یعنی یک آرایه ی جاوا اسکریپت دارم که باید عناصرش از دیتا بیس خونده بشه
ولی مشکل اینجاست که وقتی یک متغیر رو از ای اس پی به متغیر جاوا پاس می دم قبول نمی کنه
و اون متغیر رو خالی میذاره
اگه راهی باشه که با جاوا اسکریپت بتونم عناصر رو از دیتا بیس بخونه فکر کنم مشگلم حل شه!
 

alireza sh

مدیر بازنشسته
تاریخ عضویت
2 ژانویه 2006
نوشته‌ها
2,668
لایک‌ها
66
سن
36
محل سکونت
نصف جهان
از کلاس RegisterClientScript استفاده کن و اسکریپت مورد نظرت رو رجیستر کن . البته بعد از این که مقدار رو در Asp.Net خوندی
 

msakbari

Registered User
تاریخ عضویت
26 مارس 2007
نوشته‌ها
8
لایک‌ها
0
با سلام .

اگه راهی باشه که با جاوا اسکریپت بتونم عناصر رو از دیتا بیس بخونه فکر کنم مشگلم حل شه!
شما می تونید برای ارتباط مستقیم JavaScript با Asp.net از Ajax استفاده کنید .
 

mosyhey1

Registered User
تاریخ عضویت
27 جولای 2005
نوشته‌ها
224
لایک‌ها
4
اگر درست متوجه شده باشم شما مي توانيد اين كار را بكنيد:
ابتدا در asp يك متغير درست مي كنيم و سپس اجزاي آرايه را از يكي يكي از ديتا بيس مي خوانيم و اين متغير را اين گونه مي سازيم. مثلاً نام متغير هم asparr باشد.
HTML:
asparr="index0,index1,index2,index3,index4"
البته با asp جوري برنامه نويسي مي كنيم تا متغيري متني با اين شكل محتوا ايجاد كنيم. پس از اين كار در همين صفحه در خارج از بلاك هاي asp (<%%>) جايي كه داريم برنامه javascript را مي نويسيم اين گونه عمل مي كنيم:
HTML:
<script language="JavaScript" type="text/JavaScript">
function func(){
	var javaarr = new Array (<%=asparr%>)
}
</script>
با اين كار در جاوا اسكريپت آرايه اي درست كرده ايم كه اجزايش را هنگام ساخت متغير asparr از ديتابيس گرفته ايم.
شايد راه راحت تري هم باشد ولي من اين كار را انجام داده ام و به درستي كار مي كند. فقط در توليد متغير متني asparr دقت كنيد كه بين هر جزء بايستي كاما باشد و بعد از آخرين جزء نيز نبايد كاما باشد. اگر براي توليدش مشكلي بود بگوييد.
 

akram.salimi

کاربر تازه وارد
تاریخ عضویت
24 جولای 2006
نوشته‌ها
39
لایک‌ها
0
محل سکونت
مشهد
اگر درست متوجه شده باشم شما مي توانيد اين كار را بكنيد:
ابتدا در asp يك متغير درست مي كنيم و سپس اجزاي آرايه را از يكي يكي از ديتا بيس مي خوانيم و اين متغير را اين گونه مي سازيم. مثلاً نام متغير هم asparr باشد.
HTML:
asparr="index0,index1,index2,index3,index4"
البته با asp جوري برنامه نويسي مي كنيم تا متغيري متني با اين شكل محتوا ايجاد كنيم. پس از اين كار در همين صفحه در خارج از بلاك هاي asp (<%%>) جايي كه داريم برنامه javascript را مي نويسيم اين گونه عمل مي كنيم:
HTML:
<script language="JavaScript" type="text/JavaScript">
function func(){
	var javaarr = new Array (<%=asparr%>)
}
</script>
با اين كار در جاوا اسكريپت آرايه اي درست كرده ايم كه اجزايش را هنگام ساخت متغير asparr از ديتابيس گرفته ايم.
شايد راه راحت تري هم باشد ولي من اين كار را انجام داده ام و به درستي كار مي كند. فقط در توليد متغير متني asparr دقت كنيد كه بين هر جزء بايستي كاما باشد و بعد از آخرين جزء نيز نبايد كاما باشد. اگر براي توليدش مشكلي بود بگوييد.
آخه این راه هم استفاده از متغیر aspتو ی جاواست
مطمینید جواب میده؟
چون هر جور متغیری که فکرش رو بکنید امتحان کردم ولی جاوا اسکریپت اصلا متغیرهای asp رو نمیشناسه!
فقط اگه یه راهی باشه که با خود جاوااسکریپت متغیرها از دیتا بیس خونده بشه خیلی خوب میشه
ممنون
 

mazoolagh

Registered User
تاریخ عضویت
10 آپریل 2004
نوشته‌ها
2,939
لایک‌ها
7
پاسخ آقای mosyhey1 بهترین و میشه گفت تنها راه حل هست - صددرصد جواب میده
 

mosyhey1

Registered User
تاریخ عضویت
27 جولای 2005
نوشته‌ها
224
لایک‌ها
4
با سلام خدمت دوستان
از آنجا که این روش مورد تایید دوستان هم هست من راه ساخت متغیر asparr که گفته بودم را با یک مثال ذکر می کنم. البته ابتدا بایستی وصل دیتا بیس بشویم:
HTML:
<%
Set ors=oconn.Execute("SELECT field FROM table")
If Not ors.eof Then
	asparr="'" & ors("field") & "'"
	ors.MoveNext
	Do while Not ors.eof
		asparr=asparr & ",'" & ors("field") & "'"
	ors.MoveNext
	Loop
End If
%>
در این مثال چون اجزای آرایه ام متنی بوده اند من دو طرف اجزا سینگل کوتیشن(') هم گذاشته ام. اگر اجزای شما عددی بود نگذارید هرچند که برای متنی هم فکر نکنم این کار ضرورت داشته باشد.
 
بالا