Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 22.03.2013, 20:21
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от devote
Это изжитки прошлого, от которого никак избавится браузерописатели не могут по причине того что все еще есть прогеры которые не понимают того что так делать нельзя
Теперь это стандарт, а значит так делать можно. Хотя сам я не в восторге от такого метода. Просто в пихая в атрибут, хочется по максимуму сократить код, при этом опуская даже ключевое слово this. Код из атрибута, как показано devote, тоже предпочтительней вынести в скрипт.
Ответить с цитированием
  #12 (permalink)  
Старый 08.12.2013, 13:23
Новичок на форуме
Отправить личное сообщение для Yuricson Посмотреть профиль Найти все сообщения от Yuricson
 
Регистрация: 08.12.2013
Сообщений: 4

Ребята, а как то же самое в input=text сделать? Код:
Код:
<script>
values=[
'36 000',
'38 000',
]
</script>
<form name="qwe">
<select onchange="document.getElementById('id_2').innerHTML=values[this.selectedIndex];">
<option  value=140*200 см>140*200 см</option>
<option  value=160*200 см>160*200 см</option>
</select>
<input type="text" name="price" value="36 000" size="25">
</form>	   

<div><span id="id_2">36 000</span> рублей</div>
Надо что бы такое же значение в input передать. Совсем в JS не шарю.
Ответить с цитированием
  #13 (permalink)  
Старый 08.12.2013, 19:15
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Точно также, только свойство не .innerHTML, а .value
Ну и если инпут в той же форме, то можно вместо document.getElementById написать this.form.inputName (где inputName имя инпута (атрибут name)).
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #14 (permalink)  
Старый 08.12.2013, 20:26
Новичок на форуме
Отправить личное сообщение для Yuricson Посмотреть профиль Найти все сообщения от Yuricson
 
Регистрация: 08.12.2013
Сообщений: 4

this.form.inputName('price').value=values[this.selectedIndex]
Не работает. Или я что то не так делаю.
Ответить с цитированием
  #15 (permalink)  
Старый 08.12.2013, 20:39
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

this.form.price.value=values[this.selectedIndex]


Кстати не проще ли сделать так:
<form name="qwe">
<select onchange="form.price.value = this.value">
<option  value="36 000">140*200 см</option>
<option  value="38 000">160*200 см</option>
</select>
<input type="text" name="price" value="36 000" size="25">
</form>


И между прочим значения с пробелами нужно оборачивать в кавычки.
__________________
В личку только с интересными предложениями

Последний раз редактировалось danik.js, 08.12.2013 в 20:42.
Ответить с цитированием
  #16 (permalink)  
Старый 08.12.2013, 20:44
Новичок на форуме
Отправить личное сообщение для Yuricson Посмотреть профиль Найти все сообщения от Yuricson
 
Регистрация: 08.12.2013
Сообщений: 4

Большое спасибо! Всё работает.
Ответить с цитированием
  #17 (permalink)  
Старый 08.12.2013, 21:36
Новичок на форуме
Отправить личное сообщение для Yuricson Посмотреть профиль Найти все сообщения от Yuricson
 
Регистрация: 08.12.2013
Сообщений: 4

Нет не проще, нужно передать другой странице и размер и цену. Хотя может и есть решения проще.
Ответить с цитированием
  #18 (permalink)  
Старый 23.04.2014, 17:20
Новичок на форуме
Отправить личное сообщение для Venzeles Посмотреть профиль Найти все сообщения от Venzeles
 
Регистрация: 23.04.2014
Сообщений: 1

Сообщение от danik.js Посмотреть сообщение
id_2.innerHTML = values[this.selectedIndex] || 'не тупи'


Можно еще так:
<form name="qwe">
    <select onchange="id_2.innerHTML = selectedOptions[0].getAttribute('data-text') || 'не тупи'">
        <option value=0 data-text="ноль"></option>
        <option value=1 data-text="одын">бла</option>
        <option value=2 data-text="двы">бла бла</option>
        <option value=3>бла бла бла</option>
        <option value=4>бла бла бла бла</option>
    </select>
</form>     
<div id="id_2"></div>
Все бы хорошо, но не работает в IE и Safari, как быть?
Ответить с цитированием
  #19 (permalink)  
Старый 23.04.2014, 20:59
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Помоему selectedOptions не кроссбраузерное.
Venzeles, пробуй this[this.selectedIndex].getAtt...
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #20 (permalink)  
Старый 28.04.2014, 14:27
Новичок на форуме
Отправить личное сообщение для GreenJo Посмотреть профиль Найти все сообщения от GreenJo
 
Регистрация: 25.04.2014
Сообщений: 5

Привет всем

Профессор подскажите можно ли сделать следующее:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Документ без названия</title>
<script>
/*функция, отображающая результат на странице */
function changeResult(result){
  document.getElementById('result').innerHTML = result;
}

/*функция, проводящая непосредственно вычисления */
function calculateForm(){

   var result = document.getElementById('id_2').value=prices;
  changeResult(result);
}
</script>
</head>

<body>
<script>
var prices=[
' ',
880,
2360,
2530
]
</script>

<form id="f">
<select onchange="document.getElementById('id_2').innerHTML=prices[this.selectedIndex]">
<option  value =" "></option>
<option  value=1>Глухая дверь ДГ001</option>
<option value=2>Межкомнатная дверь ДО002</option>
<option  value=3 >Межкомнатная дверь ДО003</option>
</select>
</form>
<div id="id_2"></div>
<!--Кнопка рассчитать -->
  <div onClick="calculateForm();" style="cursor:hand;cursor:pointer;">Рассчитать</div>


<!-- Контейнер вывода результата -->
<div id="result"></div>

</body>
</html>


Сделать сложение.
При нажатии рассчитать выходят все значения prices, не могу сделать чтоб выходили числа по значению value подскажите плиз.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Select, select, select... anlov AJAX и COMET 0 24.10.2011 11:16
Как сохранить предыдущее значение select? MaxD Общие вопросы Javascript 3 21.07.2011 12:36
Подгрузка select и работа с ними после! BASSON_XVI jQuery 3 07.01.2011 11:28
Проблема с динамическим формированием select elepsion jQuery 1 31.10.2010 14:31
заполнить select значениями другого select Central Элементы интерфейса 1 30.05.2009 14:41