- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Мне нужно, чтобы в зависимости от выбора <select name="grdnaz" id="grdnaz"> менялась переменная cost_min. Я написал такой код:
Значение переменной cost_min в инпуте меняется только после перезагрузки страницы. Как сделать, чтобы эта переменная менялась "на лету" при изменении значений селекта?
Мне нужно, чтобы в зависимости от выбора <select name="grdnaz" id="grdnaz"> менялась переменная cost_min. Я написал такой код:
Значение переменной cost_min в инпуте меняется только после перезагрузки страницы. Как сделать, чтобы эта переменная менялась "на лету" при изменении значений селекта?
повесить функцию на событие onchange селекта
<select name="grdnaz" id="grdnaz" onchange="function();">
или можно в jQuery навоять (только имхо в данном случае это никчему)
вы не привязали функцию f к onchange selectа
Добавил к селекту onchange="function();" но все-равно значение переменной не изменяется.
Держи рабочий вариант
Спасибо, помогло. Теперь можно к этому же селекту привязать еще 2 переменные tWes и tVolume? Примерно как-то так:
И соответственно вывести инпуты с id tWes и tVolume?
Ввёл переменную var d = document; программисты народ ленивый :)
Почитайте про switch/case на досуге
Ввёл переменную var d = document; программисты народ ленивый
и про $ (jquery, например)
Спасибо Timotty, направил на путь истинный))) Хотя пришлось немного изменить код, потому что компонент калькулятора FormCalc (для него и нужен был код) почему-то заменял фигурные скобки спанами. В итоге получилось вот такая конструкция:
f=(function (){
var grd_naz = document.getElementById("grdnaz").value;
var cost_min, tWes, tVolume;
if(grd_naz==1) document.getElementById("cost_min").value=500;
if(grd_naz==2) document.getElementById("cost_min").value=500;
if(grd_naz==3) document.getElementById("cost_min").value=500;
if(grd_naz==4) document.getElementById("cost_min").value=500;
if(grd_naz==5) document.getElementById("cost_min").value=500;
if(grd_naz==6) document.getElementById("cost_min").value=500;
if(grd_naz==7) document.getElementById("cost_min").value=500;
if(grd_naz==1) document.getElementById("tWes").value=5.7;
if(grd_naz==2) document.getElementById("tWes").value=6.9;
if(grd_naz==3) document.getElementById("tWes").value=4.9;
if(grd_naz==4) document.getElementById("tWes").value=6.9;
if(grd_naz==5) document.getElementById("tWes").value=6;
if(grd_naz==6) document.getElementById("tWes").value=6.6;
if(grd_naz==7) document.getElementById("tWes").value=4;
if(grd_naz==1) document.getElementById("tVolume").value=1298;
if(grd_naz==2) document.getElementById("tVolume").value=1584;
if(grd_naz==3) document.getElementById("tVolume").value=1100;
if(grd_naz==4) document.getElementById("tVolume").value=1584;
if(grd_naz==5) document.getElementById("tVolume").value=1364;
if(grd_naz==6) document.getElementById("tVolume").value=1474;
if(grd_naz==7) document.getElementById("tVolume").value=902;
document.forms['calcForm'].elements['grdnaz'].fireEvent('change');
});
Калькулятор работает, но хотелось бы его еще усовершенствовать. Сейчас стоимость рассчитывается по фиксированному тарифу, а хотелось бы, чтобы тариф изменялся в зависимости от введенных пользователем веса и объема. Нужно ввести коэффициенты:
-в зависимости от веса: до 500 кг- 1.08; до 800 кг - 1.007; до 1500 кг - 1; до 3000 кг - 0.95; более 3000 кг - 0.833
-в зависимости от объема: до 2,5 - 1.055; до 4 - 1; до 7,5 - 0.965; до 15 - 0.92; более 15 - 0.907
и так же вывести отображение этих коэффициентов в инпуты. Если не сложно, подскажите как это сделать.
а если value запихнуть в options
<options value="500|5.7|1298>Что-то</option>
То эти длинные if не нужны
var grd_naz = document.getElementById("grdnaz").value;
var value = grd_naz.split('|');
document.getElementById("cost_min").value=value[0];
document.getElementById("tWes").value =value[1];
document.getElementById("tVolume").value = value[2];
А для веса и объема свои селекты с уже готовыми value в options
Спасибо, так код реально меньше. А вот сделать селекты для веса и объема не вариант, т.к эти значения в пределах от 10 до 3000 кг. Даже если сделать шаг в 10 кг, то представляете какой огромный селект получится))))