|
|
|
| В яве не силён, хотя вопрос не сложный.
Принцип работы: В зависимости от выбранного в селекте значения показывается дополнительная часть информации.
Проблема: Когда в селекте выбирается значение "1" или "2", то всё нормально, подгружается либо первый див либо второй, а вот когда в селекте выбираем третье значение, то ничего не выводит, и это не удивительно :)
А надо чтобы при третьем выборе выводился второй блок див (id="block_2"). Конечно можно было бы и в селекте в третьем значении написать value="2", но тогда у меня нарушиться целостность БД, в ней надо отмечать что это именно "Товарищество".
Вот и думаю как бы добавить в JS код который бы определял, что если выбрано значение "3", то изменить его на значение "2". (?)
function Switch(id)
{
document.getElementById('block_1').style.display = 'none';
document.getElementById('block_2').style.display = 'none';
document.getElementById('block_'+id.value).style.display = 'block';
}
|
<select name="value1" onchange="Switch(this)">
<option value="1">Частное лицо</option>
<option value="2">Организация</option>
<option value="3">Товарищество</option>
</select>
<div id="block_1" style="display:none">
Частники
</div>
<div id="block_2" style="display:none">
Организация
</div>
|
| |
|
|
|
|
|
|
|
для: Kostya
(19.06.2010 в 10:34)
| | А если от обратного - Организация и Товарищество это одно и тоже? | |
|
|
|
|
|
|
|
для: sim5
(19.06.2010 в 10:39)
| | Не совсем, дальше, в логической структуре сайта они будут не много отличаться, по этому я их не трогаю. | |
|
|
|
|
|
|
|
для: Kostya
(19.06.2010 в 10:59)
| | Это вообще разные вещи, и логически по представлению в базе, и по структуе орагнизации, потому сложно понять, почуму два разных объекта должны отображаться одним элементом.
Может быть сперва как следует о структуре базы подумать? | |
|
|
|
|
|
|
|
для: sim5
(19.06.2010 в 11:06)
| | Говорите вы всё правильно, честно сказать я даже несколько удивлён что по столь не значительному коду вам удалось это увидеть. Дело в том, что я и наша команда делаем новый проект, только начали. Проект сложный и то каким он будет примерно видит только наш менеджер, мы же его до конца понять не можем, поэтому и приходиться делать по кусочкам. Сейчас схема такая, как только она вылезет на экран, сразу будет понятно что делать дальше а что переделать. :/ | |
|
|
|
|
|
|
|
для: sim5
(19.06.2010 в 10:39)
| | Блин, у природы новый закон видать... Сначало сидел думал как сделать, день потерял. Стоило написать этот вопрос на форуме как ответ нашелся почти сам :)
Проблему решил таким методом:
function Switch(id)
{
var num = (id.value==3)? 2 : id.value;
document.getElementById('block_1').style.display = 'none';
document.getElementById('block_2').style.display = 'none';
document.getElementById('block_'+num).style.display = 'block';
}
|
| |
|
|
|