Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.12.2010, 13:40
Аватар для Андрей38
Профессор
Отправить личное сообщение для Андрей38 Посмотреть профиль Найти все сообщения от Андрей38
 
Регистрация: 11.12.2010
Сообщений: 261

Как вернуть строки по содержимому ячеек ?
Здравствуйте !Господа програмисты, помогите пожайлуста решить такой ,трудный для меня вопрос_Я лишь как 30 дней изучаю понятие о скриптах и не имею уверенности , что освою это дело.Мне необходимо
Вернуть те TR-строки в ПОСЛЕДНИХ TD-Ячейках которых есть НУЛИ

<table >
  
      <tr>
            <td>A</td>
            <td> текстА</td>
            <td>0</td>
          </tr>
          <tr>
            <td>B</td>
            <td>текстB</td>
            <td>40</td>
          </tr>
          <tr>
            <td>C</td>
            <td>текстC</td>
            <td>0</td>
          </tr>
          <tr>
            <td>D</td>
            <td>тексстD</td>
            <td>50</td>
          </tr>
        </tbody>
      </table></td>
    </tr>

</table>

и такое же для Инпут-Текста в первых ячейках

Вернуть те строки по ПЕРВЫМ ячейкам в которых есть ТЕКСТ ПОЛЕ-input с value='0'(РАВНО) НУЛЮ ; и для 2-й варианта: те строки с vаlue БОЛЬШЕ Нуля в их первых ячейках

<table>

    <tr>
      <td><input name="textfield" id="textfield" type="text"  value="0" /></td>
      <td> текстАf</td>
      <td>0</td>
    </tr>
    <tr>
      <td><input name="textfield2" id="textfield2" value="40" type="text" /></td>
      <td>текстBf</td>
      <td>40</td>
    </tr>
    <tr>
      <td><input name="textfield3" id="textfield3" value="0" type="text" /></td>
      <td>текстCf</td>
      <td>0</td>
    </tr>
    <tr>
      <td><input name="textfield4" id="textfield4" value="50" type="text" /></td>
      <td>тексстDf</td>
      <td>50</td>
    </tr>

</table>


Пожайлуста_ помогите С уважением Андрей( в прошлом я любитель 3д графики_Эксперементировал с VRml в 3Д-Максе)

Последний раз редактировалось Андрей38, 11.12.2010 в 13:54.
Ответить с цитированием
  #2 (permalink)  
Старый 11.12.2010, 14:16
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

var rows = document.getElementById("main").rows,
nodes = [];
for (var i = 0; i < rows.length; i++)
	if (rows[i].cells[rows[i].cells.length - 1].innerHTML.replace(/\s|\n/g, "") == "0")
		nodes.push(rows[i]);


Таблице присвоить id='main'.
Ответить с цитированием
  #3 (permalink)  
Старый 11.12.2010, 14:24
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от Андрей38
в прошлом я любитель 3д графики_Эксперементировал с VRml в 3Д-Максе
Какое отношение это имеет к вашему вопросу?

<script type="text/javascript">
window.onload = function(){
    var td = document.getElementsByTagName('td'), i = td.length;
    while(i--){
        if(td[i].innerHTML == 0){
            td[i].parentNode.style.color = 'red';
        }
    }
};
</script>

<table>
    <tbody>
        <tr>
            <td>1</td>
            <td>1</td>
            <td>1</td>
        </tr>
        <tr>
            <td>1</td>
            <td>0</td>
            <td>1</td>
        </tr>
        <tr>
            <td>1</td>
            <td>1</td>
            <td>1</td>
        </tr>
    </tbody>
</table>
Ответить с цитированием
  #4 (permalink)  
Старый 11.12.2010, 14:55
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

monolithed, зачем все TD перебирать?
Ответить с цитированием
  #5 (permalink)  
Старый 11.12.2010, 15:22
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

exec, ну я надеюсь что автор, не настолько глуп, чтобы не поставить идентификатор.
Ответить с цитированием
  #6 (permalink)  
Старый 03.02.2011, 17:22
Аватар для Андрей38
Профессор
Отправить личное сообщение для Андрей38 Посмотреть профиль Найти все сообщения от Андрей38
 
Регистрация: 11.12.2010
Сообщений: 261

Сообщение от monolithed Посмотреть сообщение
Какое отношение это имеет к вашему вопросу?

<script type="text/javascript">
window.onload = function(){
    var td = document.getElementsByTagName('td'), i = td.length;
    while(i--){
        if(td[i].innerHTML == 0){
            td[i].parentNode.style.color = 'red';
        }
    }
};
</script>

<table>
    <tbody>
        <tr>
            <td>1</td>
            <td>1</td>
            <td>1</td>
        </tr>
        <tr>
            <td>1</td>
            <td>0</td>
            <td>1</td>
        </tr>
        <tr>
            <td>1</td>
            <td>1</td>
            <td>1</td>
        </tr>
    </tbody>
</table>
Ребята !!! Не ожидал , что кто-то ответит !!! Спасибо ОГРОМНОЕ !!!

За это время я продвинулся немного дальше и сам решил более легкую задачу на примере поиска ВЛОЖЕННОЙ таблици и вложенного <UL> в ячейку таблици , используя JQuery фреймворк,
и ,как я думаю,именно ПЕРЕБИРАЯ строки таблици . Я делаю это через двойной парент_ PARENT().PARENT() Те сначала - ЯЧЕЙКА содержимого ,потом СТРОКА , и так можна дойти и до BODY .Был рад,что после этого увидел в нете такой же подход и в других ). Вы заметили, что я новичок в таком деле

Должно быть ваши коды высокоскоросные и как я надеюсь , работают при поиске по значению именно в VALUE !!! Спасибо огромное еще раз !!!

Последний раз редактировалось Андрей38, 04.02.2011 в 12:13.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
скрипт бегущей строки - как сделать строку непрерывной dansury Элементы интерфейса 9 26.01.2013 04:54
Как обрезать строку и добавить символы в середине, в зависимости от длинны строки andreyua Firefox/Mozilla 12 10.12.2010 15:44
Как удалить последний символ строки? PAMAC Events/DOM/Window 5 18.10.2009 15:01
Как правильно послать XML в POST запросе LowCoder AJAX и COMET 10 15.07.2009 23:20
можно ли, если да то как удалить строки из таблицы Avaria Я не знаю javascript 3 11.06.2009 03:03