Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.09.2015, 23:26
Кандидат Javascript-наук
Отправить личное сообщение для sashgera Посмотреть профиль Найти все сообщения от sashgera
 
Регистрация: 20.09.2011
Сообщений: 140

Скрыть поле по выбору радиобаттон
Здравствуйте
В оформлении заказа нужно скрыть поле "Номер паспорта", если выбрать радиобаттон "Доставка по Москве".
На отдельной страничке все работает: http://www.glassbus.ru/Untitled-4.php
Но на самом сайте JS упорно не хочет скрывать это поле. Возможно, есть конфликт джаваскриптов - Вариант доставки и Способ оплаты зависимы друг от друга.

Здесь тестирую (нажмите кнопку Купить и перейдете в оформлении заказа): http://www.glassbus.ru/test/vm.html?page=shop.product_details&product_id=2&cat egory_id=1&flypage=flypage.tpl
Пожалуйста, помогите
Вот JS:
<script type="text/javascript">
var inp = document.getElementsByName('shipping_rate_id');
var fax_txt = document.getElementById('vm_pasport_div');
var fax_inp = document.getElementById('vm_pasport_input');
function func (elm) {
    if (elm.id == "hasha917f3643fcc7141bc83f55fb83a6c62" && elm.checked){
       fax_txt.style.display = "none";
       fax_inp.style.display = "none";
    }else{
       fax_txt.style.display = "";   
       fax_inp.style.display = "";
    }
}
      
for (var i=0;i<inp.length;i++){
   inp[i].onchange = function () {func(this)};
}   
</script>

Последний раз редактировалось sashgera, 16.09.2015 в 23:30.
Ответить с цитированием
  #2 (permalink)  
Старый 16.09.2015, 23:57
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

Вы б лучше консолью пользовались, тогда б вопросы не возникали.

Это что такое?
function getPaymentId()
	 {
	  return getValueOfSPaymentMethod();
	   var radioObj = document.getElementsByName("payment_method_id");
	   if (!radioObj) return "";
	   var radioL = radioObj.length;
	   if (radioL == undefined)
	    if (radioObj.checked) return radioObj.value;
	    else return "";
	   for (var i=0; i< radioL; i++)
	   if (radioObj[i].checked) { return radioObj[i].value; }
	   /*
	   if (radioObj.length == 1)
	   {
	    if (radioObj[0].type == 'hidden') return radioObj[0].value;
	    
	   }
	   */
	   return "";
	 }
Ответить с цитированием
  #3 (permalink)  
Старый 17.09.2015, 00:22
Кандидат Javascript-наук
Отправить личное сообщение для sashgera Посмотреть профиль Найти все сообщения от sashgera
 
Регистрация: 20.09.2011
Сообщений: 140

Lemme, у меня сайт на joomla, установил компонент One Page Checkout (оформление заказа virtuemart на одной странице)
Функция getPaymentId из этого компонента. Что в ней не так, я не знаю. Если можете - помогите.
Ответить с цитированием
  #4 (permalink)  
Старый 17.09.2015, 00:43
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

Дело в том, что после 3й строки - код никогда не отработает.... Но не суть.

Код должен выглядеть примерно так, все остальные нюансы уже поправите сами.
var cb = document.getElementById('hasha917f3643fcc7141bc83f55fb83a6c62'), // passport radio button
	fd = document.getElementById('vm_pasport_field'); // passport field

cb.onchange = function() {
	if (this.checked) {
		fd.style.display = 'none';
	}
	else {
		fd.style.display = 'block';
	}
}

Последний раз редактировалось Lemme, 17.09.2015 в 00:57.
Ответить с цитированием
  #5 (permalink)  
Старый 17.09.2015, 01:11
Кандидат Javascript-наук
Отправить личное сообщение для sashgera Посмотреть профиль Найти все сообщения от sashgera
 
Регистрация: 20.09.2011
Сообщений: 140

Lemme, применил ваш JS, поле с паспортом все равно не скрывается..
Ответить с цитированием
  #6 (permalink)  
Старый 17.09.2015, 01:41
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

sashgera, не знаю, куда вы его применили, но у меня скрывает (криво), не все, но скрывает.

<iframe width="560" height="315" src="https://www.youtube.com/embed/SBlWkb-Vpqg" frameborder="0" allowfullscreen></iframe>
Ответить с цитированием
  #7 (permalink)  
Старый 17.09.2015, 02:07
Кандидат Javascript-наук
Отправить личное сообщение для sashgera Посмотреть профиль Найти все сообщения от sashgera
 
Регистрация: 20.09.2011
Сообщений: 140

Lemme, JS разместил в шаблоне компонента
components/com_virtuemart/themes/default/templates/onepage/onepage.unlogged.tpl.php
Ответить с цитированием
  #8 (permalink)  
Старый 17.09.2015, 03:22
Кандидат Javascript-наук
Отправить личное сообщение для sashgera Посмотреть профиль Найти все сообщения от sashgera
 
Регистрация: 20.09.2011
Сообщений: 140

скрыть поле не получается
Ответить с цитированием
  #9 (permalink)  
Старый 17.09.2015, 21:01
Кандидат Javascript-наук
Отправить личное сообщение для sashgera Посмотреть профиль Найти все сообщения от sashgera
 
Регистрация: 20.09.2011
Сообщений: 140

Сообщение от Lemme
sashgera, не знаю, куда вы его применили, но у меня скрывает (криво), не все, но скрывает.
Lemme, пожалуйста, подскажите где вставить ваш JS. Я пробовал в файлах компонента One Page Checkout, Virtuemart - ваш js поле не скрывает.
Ответить с цитированием
  #10 (permalink)  
Старый 17.09.2015, 21:20
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

sashgera, не представляю, ибо никаких ошибок нет. Кроме
SyntaxError: unreachable code after return statement
, но вы говорите, что это не ваш код.

Смотрите, у в вашей форме есть radio button
Цитата:
Банковский перевод на расчетный счет - КОМИССИЯ 10% (+ 10%)
если ее выбрать, то появляется комиссия
Цитата:
Комиссия 160 руб.
Смотрите на то, как она реализована и сделайте подобное с паспортом.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
скрыть поле если Input пустой gamera Элементы интерфейса 6 30.03.2015 10:50
Скрыть кнопку, если поле div, который она выводит пустой SuperTester Общие вопросы Javascript 5 18.03.2015 23:44
Получить координаты курсора в текстовом поле в пикселях prike Events/DOM/Window 4 23.05.2013 04:35
Ошибка в не большом скрипте modestes jQuery 2 08.03.2013 04:28
Изменение класса Div-ов по клику... Torch`Ok Events/DOM/Window 22 12.09.2012 16:43