Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Enable поля типа файл
 
 автор: malish   (12.08.2005 в 18:01)   письмо автору
 
 

народ помогите, а,! есть чекбокс и поля файл ( для аплода) нужно чтобы при нажатии на чекбокс поле файл становилось не активным. плиз хелп

   
 
 автор: servannin   (13.08.2005 в 16:08)   письмо автору
 
   для: malish   (12.08.2005 в 18:01)
 

Например,так:

<html>
<head>
<script language="JavaScript">
function myenable(){
if(document.getElementById('f1').disabled==false){
  document.getElementById('f1').disabled=true;
 }
else {
  document.getElementById('f1').disabled=false;
 }
}
</script>
</head>

<body>
 <form name="myform" method="post">
 <input type="checkbox"  id="c1" onclick="myenable()"><input type="File" id="f1">
 </form>
</body>
</html>

при клике - становится неактивным,при ещё одном клике - активным.
Если у тебя много комбинаций типа - checkbox + file - можно сделать функцию,где не нужно будет указывать конкретные id...думаю сам догадаешься :)

   
 
 автор: Евгений Петров   (13.08.2005 в 18:20)   письмо автору
 
   для: servannin   (13.08.2005 в 16:08)
 

Только этот код будет работать только в IE. В Netscape ф-я getElementById() помоему не работает.
Лучше делать явно:
<html>
<head>
<script language="JavaScript">
function myenable(elemId){
if(elemId.disabled==false){
  elemId.disabled=true;
}
else {
  elemId.disabled=false;
}
}
</script>
</head>

<body>
<form name="myform" method="post">
<input type="checkbox"  id="c1" onclick="myenable("f1")"><input type="File" id="f1">
</form>
</body>
</html>

Или что то вроде того...

   
 
 автор: servannin   (13.08.2005 в 22:23)   письмо автору
 
   для: Евгений Петров   (13.08.2005 в 18:20)
 

Здесь я показал саму идею,а не правильный код :) .....
Повторюсь ещё раз,если у него на странице много комбинаций типа - checkbox + file , то что??? например 100 ?И что ему придётся 100 раз писать

if(elemId.disabled==false){ 

или

if(elemId1.disabled==false){ 

....
и т.д. ?
Естественно, нет.
Просто идея,даже не идея, а один из вариантов...Код показанный нами malish вряд ли будет использовать без изменений.... :)

   
 
 автор: Евгений Петров   (13.08.2005 в 23:30)   письмо автору
 
   для: servannin   (13.08.2005 в 22:23)
 

Зачем писать сто раз одну и ту же функцию. Их для того и делали, чтоб сто раз не писать одно и то же. А вот имена чекбоксов надо присваивать разные.

   
 
 автор: servannin   (14.08.2005 в 00:08)   письмо автору
 
   для: Евгений Петров   (13.08.2005 в 23:30)
 

Вы меня не поняли.....
Я и говорю,что если на странице куча чекбоксов и каждому 'принадлежит' <input type="file"...>,то естественно надо писать функцию...так что обращаться к элементу по айдишнику не подходит.
Не только имена чекбоксов надо присваивать разные,но и <input type="file"...>...

PS:думаю продолжать эту тему стало бессмысленно...

   
 
 автор: Евгений Петров   (14.08.2005 в 00:27)   письмо автору
 
   для: servannin   (14.08.2005 в 00:08)
 

Согласен! :)

   
 
 автор: malish   (14.08.2005 в 10:20)   письмо автору
 
   для: Евгений Петров   (14.08.2005 в 00:27)
 

спасибо всем!

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования