View Full Version : سوال: فرستادن یک مقدار به یک فایل جاوا اسکریپت
  
peymannaji
پنج شنبه 02 آبان 1387, 11:29 صبح
با سلام 
من یک تابع در یک فایل جاوا اسکریپت دارم که میخوام با کلیک بروی یک دکمه  مقداری که از دیتابیس گرفتم رو درون کد جاوا قرار بدم  و  لازم بذکر است که این تابع که درون فایل جاوا اسکریپت است  ورودی نمیگیره فقط یک روال رو اجرا میکنه .
خوب تا اینجا من فقط میتونم فایل حاوی کد جاوا اسکریپت رو به صفحه خودم چه با asp.net چه با تگهای html اضافه کنم . اما بعد از اون نمیدونم چگونه مقدار مورد نظرم رو در تابعی که درون فایل جاوا اسکریپت است قرار بدم و روال رو اجرا کنم .
دوستان اگر ممکن هست یک راهنمایی کنند تا الگوریتم پیاده سازی اون دستم بیاد .
با تشکر
raravaice
پنج شنبه 02 آبان 1387, 11:37 صبح
2 تا راه داری:
یکی اینکه اون فایل رو به صورت Dynamic ایجاد کنی (" با استفاده از ashx ترجیحا")
دوم اینکه یه متغییر عمومی توی صفحه ایجاد کنی و اون متغییر رو از  سمت سرور مقدار دهی کنی و توی فایل دقیقا از همون متغییر استفاده کنی.
موفق باشید
peymannaji
پنج شنبه 02 آبان 1387, 11:59 صبح
کد داخل فایل جاوا اسکریپت بصورت زیر هست :
  var timer;
  var div = null;
  var min_divWidth = 0;
  var max_divWidth = 100
  var divWidth = 0;
  var injector = 2;
  var interval = 30;
  function animate() {
    if( !div ) {
      div = document.getElementById( 'div_id' );
    }
    if( divWidth == min_divWidth ) {
      div.style.display = 'inline';
    }
    if( divWidth > 0 && divWidth < 100 ) {
      return;
    }
    timer = setInterval( 'start()', interval );
  }
  function start() {
    divWidth += injector;
    div.style.width = divWidth + 'px';
    if( divWidth == min_divWidth || divWidth == max_divWidth ) {
      stop();
      injector *= -1;
    }
  }
  function stop() {
clearInterval( timer );
    if( divWidth == min_divWidth ) {
      div.style.display = 'none';
    }
  }
از اونجایی که من کدها رو مستقیم وارد صفحه نکردم و در فایل هست و از طرفی میخوام مقدار متغیرهایی که در ابتدا تعریف شده  رو بصورت داینامیک تغییر بدم نمیدونم چکار باید کرد
peymannaji
پنج شنبه 02 آبان 1387, 12:01 عصر
2 تا راه داری:
یکی اینکه اون فایل رو به صورت Dynamic ایجاد کنی (" با استفاده از ashx ترجیحا")
دوم اینکه یه متغییر عمومی توی صفحه ایجاد کنی و اون متغییر رو از  سمت سرور مقدار دهی کنی و توی فایل دقیقا از همون متغییر استفاده کنی.
موفق باشید
دوست عزیز ممنون . ممکن هست کمی بیشتر توضیح بدین در مورد راهی که فرمودید  .
raravaice
پنج شنبه 02 آبان 1387, 13:27 عصر
من فرض رو بر این میگیرم که متغییرinjector قرار هست که از سمت سرور مقدار بگیره.
پس داخل صفحه دارم :
<html>
<head>
<script>
var injector = <%=injector%>;
</script>
<script src='myfile.js' />
</head>
<body>
.
.
.
.
</body>
</html>
حالا از سمت سرور :
public injector as integer = 2
var injector = 2 هم از توی فایل js برداشته میشه.
موفق باشید
peymannaji
پنج شنبه 02 آبان 1387, 14:50 عصر
دوست عزیز ممنون از محبتتون . مشکلم حل شد .  ولی کاشکی میشد همین یک خط رو هم تو خود فایل قرار میدادیم  آیا میشه این کار رو کرد ؟ 
  var injector = <%=injector%>;
raravaice
پنج شنبه 02 آبان 1387, 16:32 عصر
باید از راه اولی که گفتم استفاده کنی ashx کار پیچیده میشه و احساس میکنم برای کار شما لازم نیست این کار انجام بشه.
موفق باشید
peymannaji
جمعه 03 آبان 1387, 00:17 صبح
با تشکر از راهنمایی های مفیدتون . از اینکه زحمت به شما دادم شرمنده . اگر در مورد استفاده از ashx رفرنسی دارید محبت میکنید به بنده معرفی کنید ؟ 
 در واقع من یک سیستم نظرسنجی دارم درست میکنم که جالب هست و بزودی در سایت قرار میدم  که ترکیبی از جاوا اسکریپت و asp.net هست  و کدهای جاوا اسکریپتم حالت داینامیک دارن.  و در واقع میخوام تا اونجا که میشه کدهام منطقی و استاندارد باشه.
موفق و پیروز باشید دوست عزیز
dr_csharp
یک شنبه 05 آبان 1387, 10:44 صبح
دوم اینکه یه متغییر عمومی توی صفحه ایجاد کنی و اون متغییر رو از سمت سرور مقدار دهی کنی و توی فایل دقیقا از همون متغییر استفاده کنی.
 نام این تکنیک چیه ؟
raravaice
یک شنبه 05 آبان 1387, 11:40 صبح
نام این تکنیک چیه ؟
چه عرض کنم!
من تا حالا اسم فنی برای این روش به گوشم نخورده
موفق باشید
dr_csharp
یک شنبه 05 آبان 1387, 12:32 عصر
چه عرض کنم!
من تا حالا اسم فنی برای این روش به گوشم نخورده
 
موفق باشید
 خوب چطور میشه که یک متغیر serverside در client در دسترس واقع میشه ؟
raravaice
یک شنبه 05 آبان 1387, 12:35 عصر
خوب چطور میشه که یک متغیر serverside در client در دسترس واقع میشه ؟
متغییر در دسترس قرار نمیگیره! مقدار متغیر بین سرور و کلاینت تبادل میشه.
موفق باشید
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.