в select выполнять два действия

Главные вкладки

Аватар пользователя ser22 ser22 25 февраля 2017 в 22:52

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

Комментарии

Аватар пользователя bumble bumble 26 февраля 2017 в 5:15

Вам нужно подучить основы javascript.

Вполне реально задавать условия на определенные события. Т.е. "ДА" - сделать это можно, и Вам могут помочь с конкретными примерами. Но эти примеры привести - Ваша задача.

Аватар пользователя ser22 ser22 26 февраля 2017 в 20:49

Вот пример кода блока.
Можно ли будет в конце дописать явавскую функцию, которая будет делать то же самое, а кроме всего прочего при необходимости менять картинку.

<p><strong>Краснодар:</strong><em>+7 (918) 14-77-774&nbsp;&nbsp;<img alt="" src="/sites/default/files/default_images/wv-contact.png" style="line-height: 20.8px; width: 47px; height: 20px;" /></em></p>

<div>Ваш город:&nbsp;<select onchange="document.getElementById(&quot;text1&quot;).value=this.value"><option value="тел. +7 (9XX) 123-45-67">Краснодар</option><option value="тел. +7 (9XX) 11-22-333">Сочи</option><option value="тел. +7 (9XX) 11-22-333">Волгоград</option><option value="тел. +7 (9XX) 11-22-333">Ставрополь</option><option value="тел. +7 (9XX) 333-44-55">Москва</option> </select></div>

<div><input id="text1" name="comment" readonly="readonly" type="text" value="тел. +7 (9XX) 123-45-67" /><img alt="" id="image1" src="/sites/default/files/default_images/wv-contact.png" style="line-height: 20.8px; width: 47px; height: 20px;" /></div>

Аватар пользователя ser22 ser22 26 февраля 2017 в 21:18

и в стандартном блоке drupal нет ограничений на ее использование?
или ее надо писать где-то в другом месте, за пределами блока?

Аватар пользователя ser22 ser22 1 марта 2017 в 12:01

Вот что получилось
в <файл темы>.info
добавил строчку
scripts[]=scripts/yourtown.js
вот код файла yourtown.js

(function your_town (par)
{
        var tel1 = "тел. +7 (988) 240-01-00";
        var tel2 = "тел. +7 (918) 14-77-774";
        var tel3 = "тел. +7 (925) 577-00-11";
        var img1 = "/sites/default/files/default_images/wv-contact.png";
        var img2 = "/sites/default/files/default_images/blanc.png";
        if (par = "1") {
                document.getElementById('image1').src=img2;
                return tel1;
        }
        else if (par = "2") {
                document.getElementById('image1').src=img1;
                return tel2;
        }
        else if (par = "3") {
                document.getElementById('image1').src=img1;
                return tel3;
        }
        else
                document.getElementById('image1').src=img2;
                return "";
        }
}
)(jQuery);

в блоке разместил такой код

<p><strong>Краснодар:</strong><em>+7 (918) 14-77-774&nbsp;&nbsp;<img alt="" src="/sites/default/files/default_images/wv-contact.png" style="line-height: 20.8px; width: 47px; height: 20px;" /></em></p>

<div>Ваш город:&nbsp;<select onchange="document.getElementById(text1).value=your_town(this.value)"><option value="1">Краснодар</option><option value="2">Сочи</option><option value="2">Волгоград</option><option value="2">Ставрополь</option><option value="3">Москва</option> </select></div>

<div><input id="text1" name="comment" readonly="readonly" type="text" value="тел. +7 (988) 240-01-00" /><img alt="" id="image1" src="/sites/default/files/default_images/blanc.png" style="line-height: 20.8px; width: 47px; height: 20px;" /></div>

но функция не отрабатывает, то значение "по умолчанию", как было так и остается, я подозреваю, что нужно как-то по другому вызвать функцию из моего файла со скриптом