2010-12-01 3 views
0

EDIT 2: возможно лучше всего увидеть страницу в действии - http://www.justdoors.co/product-selection - в принципе мне это нужно, если кто-то выбирает что-то в первом окне выбора, затем они нажимают дальше, а затем открывает другое раскрывающееся меню , если кто-то вернется и изменит параметр в первом раскрывающемся списке, мне нужно, чтобы второй бит сбросился и спрятался, пока они не нажмут рядом с подходящей опцией.jQuery multiple DIVs - показать/скрыть сменить

Привет [окно выбора]

Если пользователь выбирает <option 1> это показывает вариант 1 DIV с информацией и ссылкой, чтобы показать DIV A Если пользователь выбирает <option 2> это показывает варианта 2 Дивых с информацией и ссылкой для отображения DIV B Если пользователь выбирает <option 3>, он показывает вариант 3 div с информацией и ссылкой, чтобы показать DIV C

Если пользователь нажимает на ссылку, чтобы показать DIV A это вызывающего второй блок выбора с аналогичными опциями.

На данный момент, если пользователь нажал, чтобы показать DIV A, а затем меняет свое мнение о первом выборе из выпадающего списка ДИВ А остается там, мне это нужно, чтобы сбросить и скрыть DIV A так что, когда они нажмут на ссылку из опции, она отобразит новый выбор.

Письменное другой путь: Пользователь выбирает <option 1> щелкает ссылку на ДИВ A >>ДИВ шоу, но затем пользователь изменяет ум и выбирает <option 2> >>ДИВ нужно скрыть >> пользователь может нажать ссылку для отображения DIV B.

Это сценарий, я использую, что показывает DIV A/B/C:

$(document).ready(function() { 
  $('#divA-holder').hide(); 
  $('#divA-link').click(function() { 
    $('#divA-holder').toggle(400); 
    return false; 
  }); 
  $('#divB-holder').hide(); 
  $('#divB-link').click(function() { 
    $('#divB-holder').toggle(400); 
    return false; 
  }); 
  $('#divC-holder').hide(); 
  $('#divC-link').click(function() { 
    $('#divC-holder').toggle(400); 
    return false; 
  }); 
}); 

Наряду с:

jQuery("#selector1").change(function(){ 
    if (jQuery(this).val() == "1") { 
     jQuery("#option1div").slideDown("fast"); 
    } else { 
     jQuery("#option1div").slideUp("fast"); 
    } 
}); 

Чтобы показать/скрыть DIVs с деталями опции в начало.

Я, вероятно, слишком усложняю вопросы, поэтому любые указатели будут замечательными!

EDIT: Я думаю, думая об этом Мне нужно что-то в функции selector1, чтобы убедиться, что все остальные divs после этого скрыты, любые указатели на то, как я могу это сделать, будут оценены.

+1

Ваш вопрос непонятен. Также поможет ссылка jsfiddle! – 2010-12-01 15:41:55

ответ

1

Играть с этим и дайте мне знать, если это то, что вы ищете: http://jsfiddle.net/bozdoz/RpakG/

Единственное, что я действительно должен был изменить тумблер(), чтобы скрыть() все и шоу() для определенный div, основанный на значении значения параметра. Поэтому я надеюсь, что решает вашу проблему: при изменении, скройте каждый div, покажите div, обозначенное значением параметра.Поскольку обработчик находится на смене, он не будет случайно скрывать желаемый div, если пользователь выбирает один и тот же div. Он будет скрывать только другие div.