Javascript.RU

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

Смена цены после выбора radio кнопки
Суть такая, попытался сделать чтобы при выбранной радио-кнопки, менялась цена
Вот как я попытался это реализовать, но заглох, так как не знаю как правильно дописать

скрипт
function visiblePrice(radio) {
            var view_price = document.getElementById('hidden_blok');
            view_price.style.display = document.querySelectorAll(":checked").length ? 'block': 'none';
            document.getElementById('view_price').disabled = false;
        }


место где должна меняться цена
<div id="hidden_blok"><span id="view_price">267</div><div id="hidden_blok"><span id="view_price">879</div><div id="view_price"><span id="hidden_blok">1245</div>

в hidden_blok прописал display: none;

радио кнопки
<li><input type="radio" name="check[]" onChange="visiblePrice(this)" value="200"> 200</li>
                                <li><input type="radio" name="check[]" onChange="visiblePrice(this)" value="500"> 500</li>
                                <li><input type="radio" name="check[]" onChange="visiblePrice(this)" value="1000"> 1000</li>
Ответить с цитированием
  #2 (permalink)  
Старый 26.11.2013, 01:24
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

витослав,
а то что id это уникальный номер у вас повторяется это нормально? и что вы хотите дописать?
Ответить с цитированием
  #3 (permalink)  
Старый 26.11.2013, 01:56
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

<form name="form1">
	<input type="radio" name="check" value="267"><label>200</label>
	<input type="radio" name="check" value="879"><label>500</label>
	<input type="radio" name="check" value="1245"><label>1000</label>
</form>
<div>Цена: <span id="price">267</span></div>

<script>
document.form1.check[0].checked = true;
for (var key in document.form1.check) {
	document.form1.check[key].onchange = function () {
		document.getElementById('price').innerHTML = this.value;
	}
}
</script>
Ответить с цитированием
  #4 (permalink)  
Старый 28.11.2013, 14:23
Интересующийся
Отправить личное сообщение для витослав Посмотреть профиль Найти все сообщения от витослав
 
Регистрация: 03.06.2013
Сообщений: 11

Сообщение от Rise Посмотреть сообщение
<form name="form1">
	<input type="radio" name="check" value="267"><label>200</label>
	<input type="radio" name="check" value="879"><label>500</label>
	<input type="radio" name="check" value="1245"><label>1000</label>
</form>
<div>Цена: <span id="price">267</span></div>

<script>
document.form1.check[0].checked = true;
for (var key in document.form1.check) {
	document.form1.check[key].onchange = function () {
		document.getElementById('price').innerHTML = this.value;
	}
}
</script>
а почему скрипт перестает работать с множественными объектами, я дописал document.getElementsByClassName('price').innerHTML = this.value; исправил id="price" на class="price" и скрипт ваще перестал работать
Ответить с цитированием
  #5 (permalink)  
Старый 28.11.2013, 14:55
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Сообщение от витослав
document.getElementsByClassName('price')
выберите в этом нужный вам элемент по индексу
Ответить с цитированием
  #6 (permalink)  
Старый 28.11.2013, 21:29
Интересующийся
Отправить личное сообщение для витослав Посмотреть профиль Найти все сообщения от витослав
 
Регистрация: 03.06.2013
Сообщений: 11

Сообщение от рони Посмотреть сообщение
выберите в этом нужный вам элемент по индексу
вот так document.getElementsByClassName('itog')[0].innerHTML = this.value; ?

ничо не понял, есть пример работы индексов?
и выбирать нужно не 1 элемент
есть страница с товарами, их 10-15 да сколько угодно и у каждого есть выбор 200 500 1000 грамм, так вот скрипт работает только с одним товаром
пробовал в форме менять name="check[0]" у другого name="check[1]" но ничерта не пашет
Ответить с цитированием
  #7 (permalink)  
Старый 29.11.2013, 10:00
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

витослав, учись студент:
<style>
form[name="form"]{float:left;border:1px solid #ccc;padding:10px;margin-right:5px;}
input[name="price"]{border:0;}
</style>

<form name="form">
	<input type="radio" name="check" value="267"><label>200</label>
	<input type="radio" name="check" value="879"><label>500</label>
	<input type="radio" name="check" value="1245"><label>1000</label><br>
	<label>Цена: </label><input type="text" name="price" value="" readonly>
</form>

<form name="form">
	<input type="radio" name="check" value="267"><label>200</label>
	<input type="radio" name="check" value="879"><label>500</label>
	<input type="radio" name="check" value="1245"><label>1000</label><br>
	<label>Цена: </label><input type="text" name="price" value="" readonly>
</form>

<form name="form">
	<input type="radio" name="check" value="267"><label>200</label>
	<input type="radio" name="check" value="879"><label>500</label>
	<input type="radio" name="check" value="1245"><label>1000</label><br>
	<label>Цена: </label><input type="text" name="price" value="" readonly>
</form>

<script>
for (var i = 0; i < document.form.length; i++) {
	document.form[i].check[0].checked = true;
	document.form[i].price.value = document.form[i].check[0].value;
	document.form[i].onclick = function(e) {
		var target = e && e.target || event.srcElement;
		if (target.name != 'check') return;
		this.price.value = target.value;
	}
}
</script>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Смена фото по нажатию кнопки egor009 jQuery 10 26.04.2022 16:41
Смена картинки кнопки при нажатии и обратно при повторном нажатии mff Общие вопросы Javascript 15 03.05.2018 14:12
html код в зависимости от выбора radio Findail Общие вопросы Javascript 6 30.03.2013 12:53
ищу DatePicker с временем, списком выбора месяца и возможностью смены месяца после вы Kri0-Gen jQuery 3 10.07.2012 16:07
Смена изображений при нажатии кнопки. Rel60 Общие вопросы Javascript 1 14.09.2009 11:05