Перейти к содержимому


JS, получить элемент из таблицы

javascript

Сообщений в теме: 10

#1 Tony999

    Активный участник

  • Пользователи
  • PipPipPip
  • 412 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 18 Ноябрь 2015 - 01:32

Уважаемые опытные пользователи и кодеры!
Подскажите, плииз, как получить значение элемента из таблицы, чтобы его потом использовать в js.
Получить нужно именно для каждой строки.
Конечно, как-то криво можно это сделать по номеру элемента, но кажется, что здесь надо использовать функцию и указатель this.
Вот, как это красиво сделать, не подскажете?

См. скриншот.
https://yadi.sk/i/uDt6puVSkXiZt

Конкретная задача: пристроить элемент (например "!!!") после названия клиента, чтобы по нему, по клику, открывалось новое окно по фильтру этого клиента.
Заранее благодарю за помощь.
Умные сайты на заказ
https://info.crm-master.info

#2 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 18 Ноябрь 2015 - 17:00

Можно использовать текстовое поле с html-разметкой и, например при сохранении записи, выполнять вычисление, которое внесет туда все, что необходимо. Или нужно именно на лету формировать?

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#3 Tony999

    Активный участник

  • Пользователи
  • PipPipPip
  • 412 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 18 Ноябрь 2015 - 18:03

Да ничего не надо сохранять или входить в запись, что в таблице. Надо просто по клику на новом элементе открыть новую вкладку браузера фактически с тем же URL, но с фильтром по названию. компании.

$('tr#tr172.back_tr a').after('<a target="_blank" href="fields.php?table=20&amp;filter=800&amp;fast_search='+$("tr#tr172.back_tr a").html()+'">!!!</a>');

С помощью after() добавляем элемент "!!!" как ссылку на открытие нового окна (вкладки) браузера с фильтром fast_search.
tr172 - это конкретная строка таблицы, $("tr#tr172.back_tr a").html() - это как раз название компании.
Задача сделать, чтобы это работало динамически, т.е. элемент "!!!" в каждой строке таблицы указывал на конкретное, находящееся там, название компании.
Умные сайты на заказ
https://info.crm-master.info

#4 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 19 Ноябрь 2015 - 17:33

Просмотр сообщенияTony999 (18 Ноябрь 2015 - 18:03) писал:

Да ничего не надо сохранять или входить в запись, что в таблице. Надо просто по клику на новом элементе открыть новую вкладку браузера фактически с тем же URL, но с фильтром по названию. компании
Я и не предлагаю входить в запись. Смысл сформировать поле со ссылкой, которая Вам нужна, через вычисление при создании новой записи в момент ее сохранения, а затем отобразить это поле в таблице. Вы же как-то вносите в таблицу записи?
Если нужно динамически - вычисление на отображение поля.
Или я что-то не понимаю?

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#5 Tony999

    Активный участник

  • Пользователи
  • PipPipPip
  • 412 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 19 Ноябрь 2015 - 18:26

Да, этот способ хороший. Так, например, я сделал значки состояния заказа подобно как в 1С сделано.
Другое дело, надо продумать, чтобы по клику по этому, скажем, значку (ссылке) сама запись не открывалась в режим просмотра.
Ведь где-то же стоит хендлер (так сразу не найти) который при клике в любом месте строки открывает запись.
Через mouseover все работает, кстати... есть не кликать. Но это не так удобно.
Умные сайты на заказ
https://info.crm-master.info

#6 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 19 Ноябрь 2015 - 19:58

прикрепите к элементу
<a href="..........." onmousedown="dont_open_view=2;">ссылка</a>

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#7 Tony999

    Активный участник

  • Пользователи
  • PipPipPip
  • 412 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 19 Ноябрь 2015 - 20:29

Почему то когда не на значок (рисунок), а на текст ссылку вешаешь, то все нормально, запись не открывается.
На рисунке уже результат открытия этой же таблицы по поиску "Контрагент" после нажатия "^^^" в поле "К".
<a title="Открыть в новой вкладке все операции по этому Контрагенту" target="_blank" href="fields.php?table=20&amp;filter=800&amp;fast_search=Рожки да ножки">^^^</a>
Из скриншота понятно для чего мне это нужно: могу сразу видеть операции по этому Контрагенту для быстрого их связывания, например, как в данном случае, закупки и соответствующей оплаты товара.
https://yadi.sk/i/kmDOrQEbkaTBf

Сообщение отредактировал Tony999: 19 Ноябрь 2015 - 20:40

Умные сайты на заказ
https://info.crm-master.info

#8 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 19 Ноябрь 2015 - 21:18

Т.е. при клике на значке (картинке) открывается запись?
Перенесите onmousedown в тег <img>.

Сообщение отредактировал andibrag: 19 Ноябрь 2015 - 21:21

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#9 Tony999

    Активный участник

  • Пользователи
  • PipPipPip
  • 412 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 19 Ноябрь 2015 - 22:10

Да, на тексте нет, а на значке открывается.
Попробую.
Спасибо! :)
Умные сайты на заказ
https://info.crm-master.info

#10 Tony999

    Активный участник

  • Пользователи
  • PipPipPip
  • 412 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 22 Ноябрь 2015 - 02:06

Работает.
Но маленькая неприятность.
Теперь, чтобы войти в запись, нужно 2 раза по ней кликнуть вместо одного.
Разумеется, это происходить только после клика по значку.
Как бы после совершения этого клика отменить
onmousedown="dont_open_view=2

Умные сайты на заказ
https://info.crm-master.info

#11 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 23 Ноябрь 2015 - 00:18

Просмотр сообщенияTony999 (22 Ноябрь 2015 - 02:06) писал:

Теперь, чтобы войти в запись, нужно 2 раза по ней кликнуть вместо одного.
Есть такая неприятность. Так и не дошли руки, чтобы докопаться до решения проблемы. По какой-то причине после клика dont_open_view=2 распространяется вверх по всей иерархии DOM до следующего клика. В js есть метод stopPropagation, который, как указано в описании, "останавливает всплытие вызова события к родительским элементам". Однажды я к нему обращался. В конкретном случае не пробовал. Возможно поможет.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения






Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных