PDA

View Full Version : مخفی شدن دکمه



yuttrim20
یک شنبه 10 اردیبهشت 1391, 19:53 عصر
فرض کنین سه تا چک باکس وجود داره که رو به روی هر کدوم یه دکمه هستش میخوام کاری کنم که تا وقتی چک باکس انتخاب نشده دکمه غیر فعال باشه و اگر چک باکس انتخاب شد دکمه فعال شود
باید چیکا کنم؟

yuttrim20
دوشنبه 11 اردیبهشت 1391, 00:21 صبح
کسی نمیتونه کمک کنه؟

Hamid.RDN
دوشنبه 11 اردیبهشت 1391, 03:51 صبح
دوست عزیز این کد


<html>
<head>
<title>Checkbox</title>
<script>
function checkIt(el)
{
if(el.checked)
el.nextSibling.disabled = false;
else
el.nextSibling.disabled = true;
}
</script>
</head>

<body>
<form>
چک باکس ۱<input type="checkbox" onclick="checkIt(this)" /><input type="button" value="دکمه ۱" disabled="true" />
<br>
چک باکس ۲<input type="checkbox" onclick="checkIt(this)" /><input type="button" value="دکمه ۲" disabled="true" />
<br>
چک باکس ۳<input type="checkbox" onclick="checkIt(this)" /><input type="button" value="دکمه ۳" disabled="true" />
</form>
</body>
</html>

اینم فایل ضمیمه

yuttrim20
دوشنبه 11 اردیبهشت 1391, 11:21 صبح
از دوستان کسی با asp نمیدونه چجوری باید این کارو کرد؟

cyrusthegreat
دوشنبه 11 اردیبهشت 1391, 12:37 عصر
از دوستان کسی با asp نمیدونه چجوری باید این کارو کرد؟

دوست عزیز

ASP.NET یه زبان سمت سرور هستش، و به اعمال کاربر در مرورگر کاری نداره. شما برای سمت کاربر باید از JS استفاده کنید. راه حل فقط و فقط استفاده از JS هستش.

Hamid.RDN
دوشنبه 11 اردیبهشت 1391, 12:52 عصر
همونطور که cyrus گفتن مدیریت کارهای سمت کاربر و در واقع بر روی browser ها به عهده Javascript هست و asp نمیتونه اینکار رو بدون ارسال مجدد اطلاعات به سرور انجام بده.

yuttrim20
دوشنبه 11 اردیبهشت 1391, 13:00 عصر
دوست عزیز

ASP.NET یه زبان سمت سرور هستش، و به اعمال کاربر در مرورگر کاری نداره. شما برای سمت کاربر باید از JS استفاده کنید. راه حل فقط و فقط استفاده از JS هستش.
اخه میخوام وقتی چک باکس تیک خورد و دکمه فعال شد با کلیک روی دکمه به صفحه موردنظر بره

Hamid.RDN
دوشنبه 11 اردیبهشت 1391, 13:50 عصر
خوب برای اینکار به دکمه ها این کد رو اضافه کنید


onclick="location.href='http://YOURLINK'"

yuttrim20
دوشنبه 11 اردیبهشت 1391, 14:18 عصر
خوب برای اینکار به دکمه ها این کد رو اضافه کنید


onclick="location.href='http://YOURLINK'"
این کد کلا با space مشکل داره فک کنم به خاطر اینه که از nextSibling استفاده شده!
آخه وقتی بین چک باکس و دکمه فاصله میذارم دیگه کار نمیکنه، این که خیلی بده!
چجوری بگم وقتی دکمه کلیک شد بره یه صفحه دیگه
ضمن این که
سالن سبز<input type="checkbox" onclick="checkIt(this)" />


باعث میشه مربع چک باکس جلوی متن باشه
وقتی
<input type="checkbox" onclick="checkIt(this)" />سالن سبز
دیگه کار نمیکنه چرااااااااااا؟؟؟؟؟؟؟

Hamid.RDN
دوشنبه 11 اردیبهشت 1391, 15:19 عصر
خوب بخاطر اینه که این کد دقیقا تگ بعدی رو فعال یا غیر فعال می کنه

این کد کاملتر هست


<html>
<head>
<title>Checkbox</title>
<script>
function checkIt(el)
{
var btn = el.nextSibling;
while(btn.nodeType != 'INPUT' && btn.type != 'button')
{
btn = btn.nextSibling;
}
if(el.checked)
btn.disabled = false;
else
btn.disabled = true;
}
</script>
</head>

<body>
<form>
چک باکس ۱<input type="checkbox" onclick="checkIt(this)" /><input type="button" value="دکمه ۱" disabled="true" onclick="location.href='http://yourlink'" />
<br>
چک باکس ۲<input type="checkbox" onclick="checkIt(this)" /><input type="button" value="دکمه ۲" disabled="true" onclick="location.href='http://yourlink'" />
<br>
چک باکس ۳<input type="checkbox" onclick="checkIt(this)" /><input type="button" value="دکمه ۳" disabled="true" onclick="location.href='http://yourlink'" />
</form>
</body>
</html>

yuttrim20
دوشنبه 11 اردیبهشت 1391, 16:43 عصر
خوب بخاطر اینه که این کد دقیقا تگ بعدی رو فعال یا غیر فعال می کنه

این کد کاملتر هست


<html>
<head>
<title>Checkbox</title>
<script>
function checkIt(el)
{
var btn = el.nextSibling;
while(btn.nodeType != 'INPUT' && btn.type != 'button')
{
btn = btn.nextSibling;
}
if(el.checked)
btn.disabled = false;
else
btn.disabled = true;
}
</script>
</head>

<body>
<form>
چک باکس ۱<input type="checkbox" onclick="checkIt(this)" /><input type="button" value="دکمه ۱" disabled="true" onclick="location.href='http://yourlink'" />
<br>
چک باکس ۲<input type="checkbox" onclick="checkIt(this)" /><input type="button" value="دکمه ۲" disabled="true" onclick="location.href='http://yourlink'" />
<br>
چک باکس ۳<input type="checkbox" onclick="checkIt(this)" /><input type="button" value="دکمه ۳" disabled="true" onclick="location.href='http://yourlink'" />
</form>
</body>
</html>
ممنون از کمکتون همونجوری که میخواستم کارکرد فقط میشه بگید

while(btn.nodeType != 'INPUT' && btn.type != 'button')
یعنی چی؟ دقیقا چیکا میکنه؟