PDA

View Full Version : پاس کردن متن یک TextBox به عنوان ورودی تابع جاوااسکریپت



b581102
دوشنبه 27 اسفند 1386, 11:21 صبح
من یه script دارم که به عنوان ورودی یه عدد می گیره و اونو فرمت می کنه :


,....FormatText(num)


حالا می خوام به عنوان ورودی ، مقدار TextBox1.Text رو بهش پاس بدم :

<asp:TextBoxID="txbPrice"runat="server"Width="300px"CssClass="RTL"BackColor="#F7FCE0"onKeyup="FormatNumber(document.getElementById('<%=txbPrice.ClientID %>').value,3,false,true);">
</asp:TextBox>


اما موقع تایپ کردن متن ، خطا می ده :
Object Required

اشکال کار من کجاست ؟

adonis
سه شنبه 28 اسفند 1386, 16:21 عصر
خوب اگه فانکشنت یه پارامتر می گیره چرا سه تا بهش پاس می کنی؟
به جای document.getElementById('<%=txbPrice.ClientID %>') هم میتونی بنویسی this

my_blithe
سه شنبه 28 اسفند 1386, 22:30 عصر
چطور میشه از کدهاس java script تو صفحه استفاده کرد
؟؟

raravaice
سه شنبه 28 اسفند 1386, 23:29 عصر
چطور میشه از کدهاس java script تو صفحه استفاده کرد?


سئوالت یا خیلی سخته یا بی معنی؟

از کدهای جاوا اسکریپت در صفحات HTML به راحتی میشه استفاده کرد.
حالا منظور شما چی بوده؟

موفق باشید

MehranZand
چهارشنبه 29 اسفند 1386, 10:55 صبح
اسکریپت رو قرار بده بررسی بشه ، من فکر میکنم یک Object به عنوان پارامتر قبول میکنه و شما در اینصورت کافیه که بری سمت سرور ClientID کنترل مورد نطر رو بگیری و بهش پاس کنی.

Hamid_PaK
پنج شنبه 01 فروردین 1387, 07:17 صبح
بالای TextBox کدهای جاوا رو توی تگ اسکریپت تعریف کن و توابع تعریفی رو در رویدادهای onClient برای کنترل تعریف کن.

یا حق ...

esmram
جمعه 02 فروردین 1387, 13:31 عصر
خیلی وقت ها پیش میاد که شما متغیری دارید یا کنترلی دارید که می خواین مقدارش رو در یک تابع جاوا اسکریپت بکار ببرید.
برای این منظور راه حل های فراوانی موجود است. من زیاد اهل فروم و این حرفا نیستم. اصلا" گم میشم! چه کنیم بلد نیستیم دیگه. :لبخند: به بزرگیتون ببخشید اگر متن ارسالی مشکلی داشت.

شما می تونید باتعریف یک متغیر بصورت جهانی در فرم خود آن را در سمت مشتری یا همون سورس html و جاوا اسکریپت صدا کنید. برای این منظور قبل از تعریف متغیر از Public استفاده کنید. :


Public String Var1;


و در سورس خود از این دستور برای بازخوانی متغیر استفاده کنید :


<%=Var1%>


اگر متن واضح نیست ببخشید. مقصر این ادیتور فروم شماست. البته نه. مشکل منم که با فروم ها کار نمی کنم. سالی یکبار.

در ضمن شما اگر بخواین یک رویداد جاوا اسکریپت رو مدیریت کنید می تونید از .Attributes.Add استفاده کنید.

MyTextBox.Attributes.Add("onkeypress", "return function1(this,event)");

اگر مشکلی بود با من در تماس باش. من زیاد فروم نمیام.

alireza.esmram@yahoo.com
www.asp-2005.blogfa.com (http://www.asp-2005.blogfa.com)
www.aspcode.ir (http://www.aspcode.ir)

my_blithe
جمعه 02 فروردین 1387, 19:57 عصر
این یک سکریپت هست:


<script language="JavaScript" link="www.js4ir.com (http://www.js4ir.com)">
var message="Welcome to my site! please go and visit www.js4ir.com (http://www.js4ir.com) ( free java script )"
var neonbasecolor="black"
var neontextcolor="red"
var flashspeed=100
var n=0
if (document.all){
document.write('<font color="'+neonbasecolor+'">')
for (m=0;m<message.length;m++)
document.write('<span id="neonlight">'+message.charAt(m)+'</span>')
document.write('</font>')
var tempref=document.all.neonlight
}
else
document.write(message)
function neon(){
if (n==0){
for (m=0;m<message.length;m++)
tempref[m].style.color=neonbasecolor
}
tempref[n].style.color=neontextcolor
if (n<tempref.length-1)
n++
else{
n=0
clearInterval(flashing)
setTimeout("beginneon()",1500)
return
}
}
function beginneon(){
if (document.all)
flashing=setInterval("neon()",flashspeed)
}
beginneon()
</script>


خوب من می خوام var message رو از یک لیبل توی فرم ویو بگیره این چطور میشه؟؟؟

Hamid_PaK
شنبه 03 فروردین 1387, 07:16 صبح
بهترین روش برای انجام این کار این که شما در همان اسکریپ مقدار نوشته را به کنترل مقدار دهی کنید:


document.getElementById("Label1").innerHTML = message;

این مقدار متغییر message را به کنترل با نام label1 که یک ASP:Label هست مقدار دهی می کنه ...
راستی این سوال چه ربطی به این موضوع داره دوست عزیز !؟؟؟ سوالت رو در موضوع جدید مطرح کنید (البته دیگه نه الان).

یا حق ...