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

HTML+CSS+JavaScript

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

 

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

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

тема: неопределенное кол-во строк
 
 автор: brys   (25.08.2009 в 22:58)   письмо автору
 
 

Когда выбираю сразу несколько пунктов в select multiple="multiple") все равно создается одна строка.

Как сделать чтобы при выборе нескольких пунктов создавалась своя строка?



function sel()
{
    var ing, mass = new Array(), tbody, row;
    
    ing = document.getElementById("ingr");
    tbody = document.getElementById("ingr_value");
    row = document.createElement("TR");
    
    
    var td1 = document.createElement("TD");
        var td2 = document.createElement("TD");
       
    
    for(i = 0; i < ing.length; i++)
    {
        if(ing[i].selected == true)
        {
            tbody.appendChild(row);
            
            row.appendChild(td1);
                    row.appendChild(td2);
            
            td1.innerHTML = ing[i].value;
                    td2.innerHTML = ing[i].firstChild.nodeValue;
        }
    }
            
}

  Ответить  
 
 автор: Волки   (25.08.2009 в 23:35)   письмо автору
 
   для: brys   (25.08.2009 в 22:58)
 

Вы создали ОДИН элемент TR, и два элемента TD. Функция работает так как она написана.
Чтобы получить таблицу из нескольких строк, их надо тоже СОЗДАТЬ.
(дальше думайте сами, это полезно)

  Ответить  
 
 автор: brys   (25.08.2009 в 23:57)   письмо автору
 
   для: Волки   (25.08.2009 в 23:35)
 

Ты мне сказал что я сделал, а на мой вопрос ответил: Сам думай.....
На этом форуме совета или решения просят.....
Я не прошу за меня делать скрип, а прошу направить меня в правильно направлении

  Ответить  
 
 автор: brys   (26.08.2009 в 00:14)   письмо автору
 
   для: brys   (25.08.2009 в 23:57)
 

Кому интерестно решение. нужно использовать другие функции:

insertRow()
insertCell()


С функцией createElement у меня не получилось

  Ответить  
 
 автор: PAT   (26.08.2009 в 02:19)   письмо автору
 
   для: brys   (25.08.2009 в 22:58)
 

У вас какой-то бред написан.
Переменная ing у вас - это какой-то HTML-тег: ing = document.getElementById("ingr");

А у HTML-тега нет и не может быть длины.
Ваша конструкция for (i = 0; i < ing.length; i++) поэтому БЕССМЫСЛЕННА.

Рекомендую вам посмотреть тему http://www.softtime.ru/forum/read.php?id_forum=4&id_theme=67393, из неё вы сможете узнать - КАК сформировать массив значений VALUE из выбранных в мульти-селекте опшенов.
Значение мульти-селект.value даст вам не массив, а значение value ТОЛЬКО ПЕРВОГО из выбранных опшенов.

  Ответить  
 
 автор: brys   (26.08.2009 в 13:31)   письмо автору
 
   для: PAT   (26.08.2009 в 02:19)
 

>У вас какой-то бред написан.
>Переменная ing у вас - это какой-то HTML-тег: ing = document.getElementById("ingr");
>
>А у HTML-тега нет и не может быть длины.

Переменная ing содержит массив из списка:
<select id="ingr" name="{$input[1]}[]" multiple="multiple">

  Ответить  
 
 автор: PAT   (27.08.2009 в 02:46)   письмо автору
 
   для: brys   (26.08.2009 в 13:31)
 

Вы не понимаете того, что пишете.

Какой-то из атрибутов тега (или из свойств тега) может содержать в себе какое-либо нужное вам значение (строковое или массив), имеющее длину. Но сам тег - ДЛИНЫ не имеет:
document.getElementById ("ingr").value.length   ---> правильно
document.getElementById ("ingr").tagName.length ---> правильно
document.getElementById ("ingr").title.length   ---> правильно
document.getElementById ("ingr").name.length    ---> правильно
...
Но
document.getElementById ("ingr").length         ---> бред

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

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