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

HTML+CSS+JavaScript

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

 

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

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

тема: Выделение строк в таблице
 
 автор: sponge   (05.10.2008 в 16:56)   письмо автору
 
 

Доброго времени суток!
Подскажите пожалуйста как реализовать следующее:
есть табличка, в ней каждая строка имеет уникальный id (<tr id="[num]">. По клику происходит выделение строки (меняется цвет), а потом по нажатию кнопки СОХРАНИТЬ id выделенных строк отсылаются в phpскрипт для дальнейшей обработки.

  Ответить  
 
 автор: sim5   (05.10.2008 в 17:59)   письмо автору
 
   для: sponge   (05.10.2008 в 16:56)
 

<script>
var ids = new Array();
function setIds(e) {
  e.style.background = "#fa8072";
  ids.push(e.attributes["id"].value);
}

function send() {
  if(ids.length > 0) {
    document.getElementById('as').value = ids.join(":");
    return true;
  } else {
    alert("Selected!");
    return false;
  }
}
</script>

<table>
<tr id="1" onclick="setIds(this)">
 <td>value</td>
 <td>value</td>
</tr>
<tr id="2" onclick="setIds(this)">
 <td>value</td>
 <td>value</td>
</tr>
<tr id="3" onclick="setIds(this)">
 <td>value</td>
 <td>value</td>
</tr>
</table>

<form action="" onsubmit="return send()">
<input type="hidden" name="as" id="as" value="">
<input type="submit" value="Сохранить">
</form>

  Ответить  
 
 автор: sponge   (05.10.2008 в 18:01)   письмо автору
 
   для: sim5   (05.10.2008 в 17:59)
 

Благодарю!!!

  Ответить  
 
 автор: sim5   (05.10.2008 в 19:14)   письмо автору
 
   для: sponge   (05.10.2008 в 18:01)
 

Не за что, это только пример, и он не учитывает повторный клик по строке таблицы. Надо понимать это нужно тоже сделать ;-)

  Ответить  
 
 автор: sponge   (05.10.2008 в 20:13)   письмо автору
 
   для: sim5   (05.10.2008 в 19:14)
 

)) как-то и не сообразил сразу. действительно нужно.

  Ответить  
 
 автор: sim5   (05.10.2008 в 21:23)   письмо автору
 
   для: sponge   (05.10.2008 в 20:13)
 

 
//переписать эту функцию
function setIds(e) {
  if (!e.style.backgroundColor) {
    e.style.backgroundColor = "#fa8072"; 
    ids.push(e.attributes["id"].value);
  } else {
    e.style.backgroundColor = "";
    for (i=0; i<ids.length; i++) {
      if (e.attributes["id"].value == ids[i]) ids.splice(i,1);
    }
  }

  Ответить  
Rambler's Top100
вверх

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