Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.07.2017, 20:01
Аспирант
Отправить личное сообщение для Sayler91 Посмотреть профиль Найти все сообщения от Sayler91
 
Регистрация: 04.03.2017
Сообщений: 90

Сравнение в jquery
Не могу сравнить ячейку "Иван" в условии. Помогите пожалуйста.

<th style="width: 150px;">Имя</th><td><div class="model-value">Иван</div></td>


var a1 = $('th:contains("Имя")').next();

if (a1.text() === "Иван"){
 alert ("Получилось");	
}
else {
 alert ("не получилось");
}
Ответить с цитированием
  #2 (permalink)  
Старый 29.07.2017, 20:35
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

var a1 = $('th:contains("Имя")').next().text()
Ответить с цитированием
  #3 (permalink)  
Старый 29.07.2017, 20:47
Аспирант
Отправить личное сообщение для Sayler91 Посмотреть профиль Найти все сообщения от Sayler91
 
Регистрация: 04.03.2017
Сообщений: 90

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>
var a1 = $('th:contains("Имя")').next().text;
if (a1 === "Иван"){
 alert ("Получилось"); 
}
else {
 alert ("не получилось");
}

</script>
</head>
<th style="width: 150px;">Имя</th><td><div class="model-value">Иван</div></td>
</html>


Так я тоже пробовал, но не получилось (
Ответить с цитированием
  #4 (permalink)  
Старый 29.07.2017, 20:55
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

И не получить, на момент выполнения кода DOM недоступно. Либо скрипт после html, либо в header, но после загрузки DOM

$(function() {
    var a1 = $('th:contains("Имя")').next().text();
    .....
});

Последний раз редактировалось laimas, 29.07.2017 в 21:31.
Ответить с цитированием
  #5 (permalink)  
Старый 29.07.2017, 22:00
Аспирант
Отправить личное сообщение для Sayler91 Посмотреть профиль Найти все сообщения от Sayler91
 
Регистрация: 04.03.2017
Сообщений: 90

Сообщение от laimas Посмотреть сообщение
И не получить, на момент выполнения кода DOM недоступно. Либо скрипт после html, либо в header, но после загрузки DOM

$(function() {
    var a1 = $('th:contains("Имя")').next().text();
    .....
});
Извините за мое невежество, но у меня не получается. Я уже по разному строил код, и в начале скрипта, и в конце, и с $(function() {, и без.
Ответить с цитированием
  #6 (permalink)  
Старый 29.07.2017, 22:14
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,103

Sayler91,
<th style="width: 150px;">Имя</th><td><div class="model-value">Иван</div></td>
браузеры не умеет такое рисовать без таблицы

Последний раз редактировалось рони, 29.07.2017 в 22:18.
Ответить с цитированием
  #7 (permalink)  
Старый 29.07.2017, 22:18
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,103

Sayler91,
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>$(function() {
var a1 = $('th:contains("Имя")').next().text();
if (a1 === "Иван"){
 alert ("Получилось");
}
else {
 alert ("не получилось");
}
})
</script>
</head>

<table><th style="width: 150px;">Имя</th><td><div class="model-value">Иван</div></td>

</table>
</html>
Ответить с цитированием
  #8 (permalink)  
Старый 30.07.2017, 04:57
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Sayler91
и в начале скрипта, и в конце, и
Еще сбоку пристроить, вдруг попрет. ) Не получится может ведь и не только потому, что все технически правильно, а оно ни в какую. Ноги этой темы растут из недавней, а насколько я помню там было две ячейки в которых есть текст "Имя". Если вся таблица, это все что было приведено ранее, и за первой ее ячейкой с указанным текстом можно найти Иван, то крупно повезло, а если Иван есть, то только в строке N?

$('th:contains("Имя")') - это уже коллекция ячеек и $('th:contains("Имя")').next() тоже, а вот $('th:contains("Имя")').next().text() вернет текст только первого элемента этой коллекции, все. А вы чего собираетесь сделать?
Ответить с цитированием
  #9 (permalink)  
Старый 30.07.2017, 09:56
Аспирант
Отправить личное сообщение для Sayler91 Посмотреть профиль Найти все сообщения от Sayler91
 
Регистрация: 04.03.2017
Сообщений: 90

Сообщение от laimas Посмотреть сообщение
Еще сбоку пристроить, вдруг попрет. )
Спасибо за советы. Проблема была в верстке, где-то ошибся, когда создавал.
Ответить с цитированием
  #10 (permalink)  
Старый 30.07.2017, 12:39
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Sayler91
Спасибо за советы.
Это шутка. У меня скорее вопрос, чем совет, или если понятно, что получите вы значение только первой найденной ячейки и это и нужно.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SOS! Не работает скрипт на сайте и не запускается видео Arin Библиотеки/Тулкиты/Фреймворки 6 22.06.2017 14:41
Динамический подсчет в таблице muraig jQuery 5 11.10.2014 16:54
хочу инвайт на хабр macdack Оффтопик 45 28.07.2013 23:18
Вопрос поддержки старых методов jQuery antonM jQuery 1 04.10.2012 00:08
Сравнение чисел jQuery neutron jQuery 1 02.06.2011 17:40