PDA

View Full Version : سوال: مشکل با مخفی کردن DIV های موجود در reapter



khz-web1
چهارشنبه 15 مهر 1388, 19:55 عصر
سلام

من با کد زیر می خوام DIV های موجود در یک reapter رو HIDE کنم ....


<body onload="document.getElementById('menu1').style.display='no ne'">

ولی متاسفانه DIV اول مخفی میشه ولی دیکر DIV ها مخفی نمیشن.....:متعجب:
لطفا دوستان راهنمایی کنند که مشکل از چیست

با تشکر

alireza_s_84
چهارشنبه 15 مهر 1388, 20:34 عصر
سلام

من با کد زیر می خوام DIV های موجود در یک reapter رو HIDE کنم ....


<body onload="document.getElementById('menu1').style.display='no ne'">
ولی متاسفانه DIV اول مخفی میشه ولی دیکر DIV ها مخفی نمیشن.....:متعجب:
لطفا دوستان راهنمایی کنند که مشکل از چیست

با تشکر
سلام دوست عزیز:
طبیعتا فقط یک المنت با این کد مخفی میشود زیرا شما فقط Id یک المنت را به آن داده اید. ممکن است شما چند Div را با یک Id همسان تعریف کرده باشید که باز هم فقط یک المنت مخفی میشود.
اگر قرار است در Load سند این کار انجام شود بهتر است در زمان طراحی آنها را مخی کنید اما اگر اصرار به مخی کردن در زمان لود سند دارید میتوانید به هر Div یک Id به شکل زیر بدهید:


<div id='Panel{0}' ></div>

به جای {0} میتوانید هر چیزی قرار دهید (البته با عدد جایگزین کنید بهتر است)
بعد میتوانید کد زیر را در انتهای صفحه قرار دهید:


<script type="text/javascript">
var Element = document.getElementsByTagName('div');
for(i=0;i<Element.length;i++)
{
if(Element[i].id.lastIndexOf('Panel',0) > -1)
{
Element[i].style.display = 'none';
}
}
</script>

یا اینکه به جای {0} از عدد استفاده کرده باشید و با این حساب که تعداد این المنتها 5 شده است میتوانید از کد زیر استفاده کنید:


<script type="text/javascript">
for(i=0;i<6;i++)
{
var Id = 'Panel' + i;
document.getElementById(Id).style.display = 'none';
}
</script>

بهر حال نظر با شماست
موفق باشید