Javascript.RU

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

Скрыть кнопку, если поле div, который она выводит пустой
Добрый день. Помогите решить проблему.

Имеем таблицу (на странице заказа)

<table class="simplecheckout-cart of_content_table">
    <tbody>
            <tr>
            <td class="image" hidden="true"><nobr>330 ₽</nobr></td> 
            <td class="name of_product_name">4 сыра
				<div style="display: none;" class="comment_options" id="comment247:YTozOntpOjY5NztzOjQ6IjEyNTciO2k6NzA3O3M6NDoiMTI4NyI7aTo3MTc7czo0OiIxMzE3Ijt9" hidden="true">
                        <div class="options">

                        </div>
                </div>
            </td>
            <td class="remove of_product_use">
            <img class="of_product_open" style="cursor:pointer;" alt="" onclick="basket_goods_mini_open('comment247:YTozOntpOjY5NztzOjQ6IjEyNTciO2k6NzA3O3M6NDoiMTI4NyI7aTo3MTc7czo0OiIxMzE3Ijt9')">
            </td> 
    </tbody>
</table>


По клику на кнопку с класом "of_product_open" поле "options" открывается. Хочу скрыть эту кнопку, если поле "options" у товара пустое. Как это сделать?


Вот сам скрипт, который делает поле видимым.
function basket_goods_mini_open(id) {
	var elem=document.getElementById(id);
	/*if (elem.hidden) {
		elem.hidden=false;
	} else {
		elem.hidden=true;
	}*/
	if($(elem).is(":hidden")) $(elem).show();
	else $(elem).hide();
}
Ответить с цитированием
  #2 (permalink)  
Старый 18.03.2015, 18:56
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Если эта кнопка именно для того чтобы открывать опции товара, то почему она присутствует у товаров, у которых опций нет, да и сам контейнер опций отсутствующих зачем на странице?
Ответить с цитированием
  #3 (permalink)  
Старый 18.03.2015, 21:31
Интересующийся
Отправить личное сообщение для SuperTester Посмотреть профиль Найти все сообщения от SuperTester
 
Регистрация: 18.03.2015
Сообщений: 20

Эта кнопка присутствует у всех товаров. Подробнее отписался вам в личку.
Ответить с цитированием
  #4 (permalink)  
Старый 18.03.2015, 21:42
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Посмотрел, а почему присутствует? Может я чего-то не понял, но:

1) у вас динамический контент, данные из базы сервер отдает клиенту
2) если данные в базе имеют надлежащую структуру, однозначно определяющую набор свойств сущностей, то отдавая данные, можно знать, что например свойство М есть NULL и вывод его не имеет смысла
3) если описываемая кнопка определяет режим свойства М, а свойство пустое, значит вывод кнопки также не имеет смысла

Я вот так понимаю, иначе для чего же тогда существуют серверные сценарии? Ради выплюнуть клиенту, а он пусть разгребает?

Или я чего-то не так понял, тогда поясните суть.

Последний раз редактировалось laimas, 18.03.2015 в 21:44.
Ответить с цитированием
  #5 (permalink)  
Старый 18.03.2015, 23:15
Интересующийся
Отправить личное сообщение для SuperTester Посмотреть профиль Найти все сообщения от SuperTester
 
Регистрация: 18.03.2015
Сообщений: 20

вы полностью правы, во всем... но суть в том, что иногда легче реализовать хак со скриптом, который будет скрывать кнопку при определенных обстоятельствах, чем разбираться в коде движка
Ответить с цитированием
  #6 (permalink)  
Старый 18.03.2015, 23:44
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

И что сложного в поиске? По имени таблицы описывающей товары, найти любые запросы к ней в редакторе минутное дело, а дальше изменить код.

$(function() {
    $('div.comment_options:hidden').each(function() {
        $(this.parentNode).next().find('img').hide()
    })
});
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как скрыть img, если src пустой? Gosha Ponomaryov Events/DOM/Window 7 23.01.2015 17:36
Как скрыть кнопку "Ответить", если Тема Закрыта kiberkun Общие вопросы Javascript 7 23.08.2014 23:53