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

HTML+CSS+JavaScript

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

 

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

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

тема: checkbox
 
 автор: levis   (12.01.2007 в 18:45)   письмо автору
 
 

Сразу скажу поиском не нашел!
как сделать чтобы :юзер нажал на чекбокс-появился div,еще раз нажал див исчез.Но при этом надо учитывать какая позиция CHECKED стояла изначально(она неизвестна)

   
 
 автор: ddhvvn   (12.01.2007 в 18:58)   письмо автору
 
   для: levis   (12.01.2007 в 18:45)
 


<div name="elem">
...
</div>

<input type="checkbox" name="chk" onclick="if (this.checked) document.all.elem.style.display=none; else document.all.elem.style.display=block;">CheckBox

   
 
 автор: levis   (13.01.2007 в 00:13)   письмо автору
 
   для: ddhvvn   (12.01.2007 в 18:58)
 

Нет не то совсем,хотя и ваш вариант я использую но для начало мне надо свормировать сами свойста чекбоха!
Поясню ситуацию подробно.
В базе храниться глобальная информация,которая применяеться к каждому новому форуму(но админ ее может поменять),в моем случае это загрузка файлов на сервер.перед тем как выводить окно с полями для создания форума,я делаю запрос к базе,где храниться значение 'checked'которое(или checked или ничего-зависит от токо что указал админ) впоследствии подставляеться в созданный чекбох,и ориентируясь на это занчение мне необходимо(без onclick-при загрузке страницы) либо вывести div либо не выводить.(в диве доп.поля для загрузка типа max_file_size).

   
 
 автор: 12345   (13.01.2007 в 05:22)   письмо автору
 
   для: levis   (13.01.2007 в 00:13)
 

Ещё раз то же самое, и грамотно, пож-ста.

   
 
 автор: ddhvvn   (13.01.2007 в 10:00)   письмо автору
 
   для: levis   (13.01.2007 в 00:13)
 

ОК, тогда


<?php
  
//получаете значение checked из БД

  //если $checked=true, выводим его отмеченным
  
if ($checked)
  {
        
$display "block";
        
$ch_stat " checked";
  }
  else
  {
        
$diplay  "none";
        
$ch_stat "";
  }

  echo 
"<div ... style=\"display: $display;...\">";
  ...
  echo 
"<input type=\"checkbox\"$ch_stat ...>";
?>

Вот примерно так. Если че не понятно - спросите

   
 
 автор: levis   (13.01.2007 в 11:48)   письмо автору
 
   для: ddhvvn   (13.01.2007 в 10:00)
 

Как вы думаете не зря же эту тему я создал в HTML+CSS+JS.
Черех пхп я сам знаю как сделать,а вот через джаву??

   
 
 автор: ddhvvn   (13.01.2007 в 12:05)   письмо автору
 
   для: levis   (13.01.2007 в 11:48)
 

К БД через javascript вы не подключитесь. Можно попробовать AJAX, но это и есть PHP+JS.
Придется совмещать мои первый и второй варианты

   
 
 автор: levis   (13.01.2007 в 16:55)   письмо автору
 
   для: ddhvvn   (13.01.2007 в 12:05)
 

и опять не поняли вы меня! короче:
checked-беру из базы с пхп!
получаеться
<input type=checkbox name="tra" checked>
или
<input type=checkbox name="tra" >
после токого как чекед станет известен можно ли применить возможнисти джавы для вывода или скрытия div'a

   
 
 автор: ddhvvn   (13.01.2007 в 18:25)   письмо автору
 
   для: levis   (13.01.2007 в 16:55)
 

Зачем Вам усложнять себе жизнь? :)))
Лучше вот так

<?php 
  
//получаете значение checked из БД 

  //если $checked=true, выводим его отмеченным 
  
if ($checked
  { 
        
$display "block"
        
$ch_stat " checked"
  } 
  else 
  { 
        
$diplay  "none"
        
$ch_stat ""
  } 

  echo 
"<div name=\"elem\" style=\"display: $display;...\">...</div>"
  ... 
  echo 
"<input type=\"checkbox\"$ch_stat ... onclick=\"if (this.checked) document.all.elem.style.display=none; else document.all.elem.style.display=block;\">CheckBox";
?> 

Если не все-таки не хотите так, то в функцию JS передавайте значение $checked, примерно так

<script language="javascript">
function show_hide(stat);
{
  if (stat=checked) document.all.elem.style.display=block;
    else
  document.all.style.display=none;
}
<?php
  
echo "show_hide($checked);";
?>
</script>


Опято не то?

   
 
 автор: 12345   (13.01.2007 в 23:57)   письмо автору
 
   для: levis   (13.01.2007 в 16:55)
 

Верно, можно сразу из РНР сделатьи чекбокс, и открытие слоя, так разумнее с точки зрения количества технологий. Но если очень хочется применить JS, то проверку чекбокса надо делать по onload, когда все свойства документа установятся:


onload=function(){
  document.getElementById('d1').style.display=['none','block'][document.getElementById('c1').checked]
}

<input type=checkbox checked id=c1> ("checked" is placed by PHP)
<div id=d1 style=display:none>
(Использован массив строк и выборка по значению .getElementById('с1').checked )

   
Rambler's Top100
вверх

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