Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   выбор из select (https://javascript.ru/forum/misc/35308-vybor-iz-select.html)

مراد 06.02.2013 23:51

выбор из select
 
Ув. форумчане, помогите решить задачу.
условие: транспортная компания предоставляет следующие услуги:
перевозка грузов, встречи в аэропорту, экскурсия по городу, такси (ну там еще какие-нибудь), клиенту предоставляется выбор транспорта(микроавтобус, мерседес, копейка, бугати (с бугати переборщил конечно :) ), грузовик, камаз ...).
нужно чтобы от выбранной услуги и вида транспорта выводилась цена
(н-р: если я выбираю встреча в аэропорту и бугати, цена равна - 1000 руб, наверное вы поняли :) ? ). еще пользователь может добавить другую услугу(нажимаю кнопку добавить, снизу появляется новая пустая форма).

решение (как я предлагаю сделать).
2 select'a, в первой помещаем услуги во второй - транспорт. по событию onchange переменной A присваивается значение 1 select'a, а переменной B - 2-го, затем проверяется условие: если (a==встреча в аэропорту && b== бугати) {document.form.cena.value='1000 руб'} иначе .........

как это реализовать на javascript?

Deff 06.02.2013 23:57

1. Составьте массив соответсвий
['встреча в аэропорту','бугати',1000,
'встреча в аэропорту',...,...,
'встреча в аэропорту',...,...,

'встреча на вокзале',...,...,
'встреча на вокзале',...,...,
.........................,

.........................,
.........................,
.........................];

Далее поиск по массиву на соответствие первого селектора и второго
Основное = это массив
Далее - минимальных HTML c cелекторами

مراد 07.02.2013 00:26

а можете написать? процесс поиска по массиву и как добавить новую форму?

Deff 07.02.2013 00:47

Цитата:

Сообщение от مراد
а можете написать? процесс поиска по массиву и

Напрягитесь и выложите массив, хотя бы на 5-6 строк по три параметра

مراد 07.02.2013 15:57

один массив или несколько массивов?

ksa 07.02.2013 16:05

Цитата:

Сообщение от Deff
Далее поиск по массиву

Тогда лучше объект...

var o={
	'встреча в аэропорту': {
		'копейка': 10,
		'мерседес': 1000,
		'микроавтобус': 100
	},
	'встреча на вокзале': {
		'копейка': 5,
		'мерседес': 500,
		'микроавтобус': 50
	}
};


Т.о. ничего искать не нужно... Значение стоимости ясно сразу.

Deff 07.02.2013 16:55

Цитата:

Сообщение от ksa
Тогда лучше объект...

Если ток нулевой ключ - массив всех Первых ключей, в ином случае распарс ключей в селекты - опять приводит к циклам перебора
Цитата:

Тут под вопросом - Возможно ksa - прав, объект интересней
Карочь - практически тож самое(даже хуже при много свойств)(исключение полезности только при одном свойстве

ksa 08.02.2013 09:35

Deff, я мало чего понял... Но для варианта автора из двух селектов вариант с объектом явно лучше поиска в массивах.

Deff 08.02.2013 13:09

Цитата:

Сообщение от ksa
Deff, я мало чего понял

Я так понял - он из этого массива, изчально хочет создать сами селекты, а затем уже поиск осуществлять
при onchange в массивах(или объекте), Так вот на этапе создания = объект заново нужно реконструировать в массив

ksa 08.02.2013 21:20

Цитата:

Сообщение от Deff
он из этого массива, изчально хочет создать сами селекты, а затем уже поиск осуществлять

Тады ой. :)

В таком варианте по тем массивам нужно делать объект - т.о. будут и селекты, и поиск не нужен.


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