چک کردن تعداد زیاد textbox با کمک حلقه یا استفاده از یه رشته به عنوان اسم متغیر
با سلام،
من تو یه صفحه به تعداد زیادی مثلاً 20 تا textbox دارم که می خوام مقادیر اونا رو چک کنم، اسم textboxها رو هم به صورت txt1, txt2, txt3, ... تعریف کردم، حالا می خوام مقاریرشون رو چک کنم، چون تعداد زیاده خواستم اینا رو توی یه حلقه بنویسم ولی نمی دونم چه طور از اسم متغیر ها توی حلقه استفاده کنم، یعنی نمی دونم چه طور اسم باکس ها که مثلاً می شه
"txt"+i
چه طوری به یه اسم متغیر تبدیل کنم، تا بتونم مقدار اون متغیر رو بفهمم.
حالا اگه دوستان هر راه حلی داشتن ممنون می شم که بگن.
نقل قول: چک کردن تعداد زیاد textbox با کمک حلقه یا استفاده از یه رشته به عنوان اسم متغیر
راه حل زیاد هست
کد HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script>
function valfun()
{
for(i=1;i<11;i++)
{
if(document.getElementsByName("txt"+i)[0].value=="")
{
alert("اطلاعات را تکمیل کنید");
document.getElementsByName("txt"+i)[0].focus();
return false;
}
}
return true;
}
</script>
</head>
<body>
<form action="" method="get" name="Form1" onsubmit="javascript:return valfun()">
<input name="txt1" type="text" /><br />
<input name="txt2" type="text" /><br />
<input name="txt3" type="text" /><br />
<input name="txt4" type="text" /><br />
<input name="txt5" type="text" /><br />
<input name="txt6" type="text" /><br />
<input name="txt7" type="text" /><br />
<input name="txt8" type="text" /><br />
<input name="txt9" type="text" /><br />
<input name="txt10" type="text" /><br />
<input type="submit" value="ثبت" /><br />
</form>
</body>
</html>
نقل قول: چک کردن تعداد زیاد textbox با کمک حلقه یا استفاده از یه رشته به عنوان اسم متغیر
مرسی ، خیلی ممنون
ولی حالا یه سوال داشتم، می شه تو جاوااسکریپت از یه رشته به عنوان اسم متغیر استفاده کرد یا نه؟ یعنی مثلاً فرض کن دو رشته کوچیک رو به هم الحاق کنم و یه رشته دیگه بدست بیاد که تو صفحم یه متغیر همنام با مقدار رشته حاصله داشته باشم. حالا به طریقی می شه از این رشته حاصله در جایی که اسم اون متغیر لازمه استفاده کرد؟
نقل قول: چک کردن تعداد زیاد textbox با کمک حلقه یا استفاده از یه رشته به عنوان اسم متغیر
<script>
var a="";
function change(name,value)
{
b=Function(name+"='"+value+"'");
b();
alert(a);
}
change("a","test");
</script>
نقل قول: چک کردن تعداد زیاد textbox با کمک حلقه یا استفاده از یه رشته به عنوان اسم متغیر
function valfun()
{
for(i=1;i<11;i++)
{
var x = "txt"+i;
b = Function("return document.Form1."+x);
y=b();
if(y.value=="")
{
alert("اطلاعات را تکمیل کنید");
y.focus();
return false;
}
}
return true;
}
نقل قول: چک کردن تعداد زیاد textbox با کمک حلقه یا استفاده از یه رشته به عنوان اسم متغیر
نقل قول:
نوشته شده توسط
hossin.esm
function valfun()
{
for(i=1;i<11;i++)
{
var x = "txt"+i;
b = Function("return document.Form1."+x);
y=b();
if(y.value=="")
{
alert("اطلاعات را تکمیل کنید");
y.focus();
return false;
}
}
return true;
}
سلام
میشه لطفا در مورد انواع مختلف تعریف توابع در جاوااسکریپت توضیح دهید. مثلا تعریف تابع در خط 6 به چه صورت است.
با تشکر
نقل قول: چک کردن تعداد زیاد textbox با کمک حلقه یا استفاده از یه رشته به عنوان اسم متغیر
سلام
در رابطه با تعریف تابع در خط 6
Function (حرف F بزرگ) یک تابع از پیش تعریف شده هست برای ایجاد تابع ، ورودی این همان کدهای تایع هست که به صورت رشته ای است
چند نمونه
البته روش های دیگری هم میتونه باشه.
کد HTML:
<script>
b1=function test1()
{
alert('test1');
}
b2=function ()
{
alert('test2');
}
b3=Function("alert('test 3')");
</script>
<button onclick="b1()">test1</button><br />
<button onclick="test1()">test1</button><br />
<button onclick="b2()">test2</button><br />
<button onclick="b3()">test3</button><br />