Javascript.RU

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

снова этот select и javascript
Друзья, помогите решить проблему.
Имеется форма select и js скрипт
php
<script type="text/javascript" src="{/js/city.js"></script>
<form name="cityForm"> 
<select name="cityselect">
<option value="0">Выбрать город</option>
<option value="1">Москва</option>
<option value="2">Санкт-Петербург</option>
<option value="3">Сочи</option> 
</form>


и файл js
.....
.....
.....
this.choose_id_city = function ()
     {
      
      var id_city = document.getElementsByName("cityselect");
      if ( id_city && id_city.length > 0 )
        {
         id_city = id_city[0];
        }
      
      this.num_category = id_city.value;
.....
.....
      
     }


На сайте когда выбираешь select, значение value передается в javascript.
Такая задача: передать значение value="2" через кнопку.

Пробовал выбрать значение option через нажатия кнопки
<form name="cityForm"> 
<select name="cityselect">
<option value="0">Выбрать город</option>
<option value="1">Москва</option>
<option value="2">Санкт-Петербург</option>
<option value="3">Сочи</option> 
</form>
<a href="javascript:void SetOption(document.cityForm.cityselect,'2')" class="button"></a>


Господа помогите. Как передать в id_city значение 2?
Ответить с цитированием
  #2 (permalink)  
Старый 09.09.2015, 10:22
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

Это самый простой вариант, когда значение === порядку option

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<form action="" name="myForm">
	    <select name="mySelect">
			<option value="0">Выбрать город</option>
			<option value="1">Москва</option>
			<option value="2">Санкт-Петербург</option>
			<option value="3">Сочи</option> 
	    </select>
	</form>
	<button onclick="setOption(document.forms.myForm.mySelect, 2);">select #2</button>
	<script>
		function setOption(select, id) {
			if (!select || !id) return false;
			select[id].selected = true;
		}
	</script>
</body>
</html>


А вот этот, если нужно указать на значение (Т.е html ниже - тоже прокатит).

<option value="1231"></option>
<option value="something"></option>

function setOption(select, id) {
	if (!select || !id) return false;
    [].forEach.call(select.children, function(item) {
    	if (+item.value === id) {
        	item.selected = true;
        }
    });
}

// или так

function setOption(select, id) {
	if (!select || !id) return false;
	select.querySelector('option[value="'+ id +'"]').selected = true;
}

Последний раз редактировалось Lemme, 09.09.2015 в 11:00.
Ответить с цитированием
  #3 (permalink)  
Старый 09.09.2015, 19:26
Новичок на форуме
Отправить личное сообщение для Nobir Посмотреть профиль Найти все сообщения от Nobir
 
Регистрация: 09.09.2015
Сообщений: 3

select меняется, но дело в том что, при смене(клика) select, срабатывает функция в /js/city.js ,
this.choose_id_city = function ()
     {
       
      var id_city = document.getElementsByName("cityselect");
      if ( id_city && id_city.length > 0 )
        {
         id_city = id_city[0];
        }
       
      this.num_category = id_city.value;


а по нажатию кнопки только меняется выбор select, а реакции на скрипт никакой нет
Ответить с цитированием
  #4 (permalink)  
Старый 09.09.2015, 19:40
Аватар для Lemme
Профессор
Отправить личное сообщение для Lemme Посмотреть профиль Найти все сообщения от Lemme
 
Регистрация: 15.07.2015
Сообщений: 511

Nobir, че? Либо у меня голова уже не варит, либо вы какой-то бред написали.

но могу посоветовать сразу, смотрите в консоль, если там что-то типа setOption is not defined, то window.onload вам в помощь.

Последний раз редактировалось Lemme, 09.09.2015 в 19:43.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
select и javascript amf1k Элементы интерфейса 10 06.08.2013 03:35
Метод для конвертирования едениц px, em, %, pt. jegit Элементы интерфейса 0 07.03.2013 16:15
Javascript SELECT - зависимые списки zakbc Events/DOM/Window 3 13.01.2013 00:37
Выбор всех Select kvaleksandr Элементы интерфейса 12 27.10.2012 20:55
Интерпретатор Java на JS kobezzza Оффтопик 24 11.10.2012 18:32