Показать сообщение отдельно
  #1 (permalink)  
Старый 26.10.2010, 09:25
Новичок на форуме
Отправить личное сообщение для kolosnitsyn Посмотреть профиль Найти все сообщения от kolosnitsyn
 
Регистрация: 26.10.2010
Сообщений: 3

[РЕШЕНО] Зависимость select и checkbox'a
Всем привет и хорошего настроения.

Помогите, пожалуйста, разобраться с одной проблемой:
есть скрипт следующего вида (jQuery пользуюсь 2-й день, так что поправьте, если код нубский):
$(document).ready(function(){
	$('#c_r').change(function(){
		$('#edit-term-node-tid-depth-6  option:selected').each(function(e){$(this).removeAttr('selected');});
		if (!$(this).is(':checked')){
			$('#edit-term-node-tid-depth-6 option:first').attr('selected','selected');
		}
	});
	$('#f_a').change(function(){
		$('#edit-term-node-tid-depth-3  option:selected').each(function(e){$(this).removeAttr('selected');});
		if (!$(this).is(':checked')){
			$('#edit-term-node-tid-depth-3 option:first').attr('selected','selected');
		}
	});
	$('#sec').change(function(){
		$('#edit-term-node-tid-depth-7  option:selected').each(function(e){$(this).removeAttr('selected');});
		if (!$(this).is(':checked')){
			$('#edit-term-node-tid-depth-7 option:first').attr('selected','selected');
		}
	});
	$('#f_m').change(function(){
		$('#edit-term-node-tid-depth-1  option:selected').each(function(e){$(this).removeAttr('selected');});
		if (!$(this).is(':checked')){
			$('#edit-term-node-tid-depth-1 option:first').attr('selected','selected');
		}
	});
	$('#f_s').change(function(){
		$('#edit-term-node-tid-depth-5  option:selected').each(function(e){$(this).removeAttr('selected');});
		if (!$(this).is(':checked')){
			$('#edit-term-node-tid-depth-5 option:first').attr('selected','selected');
		}
	});
	$('#f_n').change(function(){
		$('#edit-term-node-tid-depth-2  option:selected').each(function(e){$(this).removeAttr('selected');});
		if (!$(this).is(':checked')){
			$('#edit-term-node-tid-depth-2 option:first').attr('selected','selected');
		}
	});
	$('#edit-term-node-tid-depth-6').mouseup(function(evt){
		evt = (evt) ? evt : event;
		var sel = $(this).find('option:selected');
		if (sel.length){
			$('#c_r').removeAttr('checked');
		} 
		else if (evt.ctrlKey) {
			$('#c_r').attr('checked','checked');
		}		
	});
	$('#edit-term-node-tid-depth-3').mouseup(function(evt){
		evt = (evt) ? evt : event;
		var sel = $(this).find('option:selected');
		if (sel.length){
			$('#f_a').removeAttr('checked');
		} 
		else if (evt.ctrlKey) {
			$('#f_a').attr('checked','checked');
		}		
	});
	$('#edit-term-node-tid-depth-7').mouseup(function(evt){
		evt = (evt) ? evt : event;
		var sel = $(this).find('option:selected');
		if (sel.length){
			$('#sec').removeAttr('checked');
		} 
		else if (evt.ctrlKey) {
			$('#sec').attr('checked','checked');
		}		
	});
	$('#edit-term-node-tid-depth-1').mouseup(function(evt){
		evt = (evt) ? evt : event;
		var sel = $(this).find('option:selected');
		if (sel.length){
			$('#f_m').removeAttr('checked');
		} 
		else if (evt.ctrlKey) {
			$('#f_m').attr('checked','checked');
		}		
	});
	$('#edit-term-node-tid-depth-5').mouseup(function(evt){
		evt = (evt) ? evt : event;
		var sel = $(this).find('option:selected');
		if (sel.length){
			$('#f_s').removeAttr('checked');
		} 
		else if (evt.ctrlKey) {
			$('#f_s').attr('checked','checked');
		}		
	});
	$('#edit-term-node-tid-depth-2').mouseup(function(evt){
		evt = (evt) ? evt : event;
		var sel = $(this).find('option:selected');
		if (sel.length){
			$('#f_n').removeAttr('checked');
		} 
		else if (evt.ctrlKey) {
			$('#f_n').attr('checked','checked');
		}		
	});
});


Суть проблемы в том, что скрипт отлично отрабатывает в Firefox 3.6.1.1, Google Chrome, Opera, а в IE8 не срабатывает можно сказать. Подскажете что можно предпринять?

Скрипт должен выполнять следующее:

Есть multiple селект, под ним есть чекбокс. Нужно, чтобы:
- при щелчке на селект галочка в чекбоксе снималась.
- Чтобы при нажатой клавише CTRL щелчке (для снятия выделенного элемента селекта) галочка возвращалась в чекбокс.
- При снятии галочки с чекбокса выделялся первый элемент селекта.
- При установке галочки в чекбокс - выделение в селекте снималось полностью.

Ай нид хелп...

Последний раз редактировалось kolosnitsyn, 26.10.2010 в 10:07. Причина: решено
Ответить с цитированием