Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Зависимость selectlist и другого selectlist (https://javascript.ru/forum/jquery/22706-zavisimost-selectlist-i-drugogo-selectlist.html)

Randomizer 29.10.2011 20:58

Зависимость selectlist и другого selectlist
 
Есть такая структура:

<select id="status">
<option value="opened">открыто</option>
<option value="finished">выполнено</option>
</select>

<select id="process">
<option value="0">0%</option>
<option value="25">25%</option>
<option value="50">50%</option>
<option value="75">75%</option>
<option value="100">100%</option>
</select>


Как сделать так, что бы при выборе в select id="status" опции с value="finished" в другом select id="process" автоматически выбиралась опция <option value="100">100</option> и наоборот? :help:

ksa 29.10.2011 21:27

Цитата:

Сообщение от Randomizer
Как сделать так, что бы при выборе в select id="status" опции с value="finished" в другом select id="process" автоматически выбиралась опция <option value="100">100</option> и наоборот?

Нужно указать какую-либо зависимость этих элементов... Как вариант.

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<!--
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
$(document).ready(function(){
	$('#status').change(function(){
		var val=this.value;
		val=document.getElementById(val);
		val=$('#process option').index(val);
		document.getElementById('process').selectedIndex=val;
	});
	$('#process').change(function(){
		var val=this.value;
		val=document.getElementById('p'+val);
		val=$('#status option').index(val);
		document.getElementById('status').selectedIndex=val;
	});
});
</script>
</head>
<body>
<select id="status">
	<option id='p0' value="opened">открыто</option>
	<option id='p100' value="finished">выполнено</option>
</select>
<hr />
<select id="process">
	<option id='opened' value="0">0%</option>
	<option value="25">25%</option>
	<option value="50">50%</option>
	<option value="75">75%</option>
	<option id='finished' value="100">100%</option>
</select>

</body>
</html>

Randomizer 30.10.2011 13:27

Спасибо!
Непросто пока новичку понять ход скрипта.
Пока попробовал и выявил, что при выборе любой опции в <select id="process"> (кроме 0) приводит к авто-выбору в <select id="status"> опции <option id='p100' value="finished">
Однако, мне хотелось бы влиять на переключение <select id="status"> в опцию <option id='p100' value="finished"> только при выборе в <select id="process"> опции <option id='finished' value="100">100%</option>

И еще вопрос: можно ли вместо .change использовать .click ? Насколько мне известно IE капризный в плане такой функции действия...

ksa 30.10.2011 16:48

Цитата:

Сообщение от Randomizer
можно ли вместо .change использовать .click ?

Это кагбе вообще разные события... :)

Цитата:

Сообщение от Randomizer
мне хотелось бы влиять на переключение

Мой пример лишь демонстрация идеи... Как сделать в итоге дело полностью твоё. И зависит только от твоего желания...

Либо оплата и тогда тебе сделают желаемый скрипт...


Часовой пояс GMT +3, время: 00:48.