Задать вопрос
Ответы пользователя по тегу JavaScript
  • Срабатывание события при drag&drop?

    @r0hack Автор вопроса
    Теперь возникла такая проблема. У меня имеется 4 колоны. Нужно, чтобы срабатывало событие при drag&drop. С помощью кода сверху нормально можно реализовать, только если я перевожу карту из одного блока в другой, а нужно, чтобы из всех во все.

    1ffda1fa8d5046959ad05a636abb07cb.jpg

    Код отвечающий за события, изначально были кнопки, теперь нужно drag&drop.
    $buttons = '';
    				foreach($taskColumnId as $id) {
    					if (empty($buttons)) {
    						switch ($id) {
    						case 1:
    							if ($task["RESPONSIBLE_ID"] == $userId) $buttons.= '<button class="btn btn-raised btn-success" id="nach" onclick="scrum.action(this,' . $task["ID"] . ',3);">Начать выполнение</button>';
    							if ($task["RESPONSIBLE_ID"] == $userId || $task["CREATED_BY"] == $userId) $buttons.= '<button class="btn btn-raised btn-success" onclick="scrum.action(this,' . $task["ID"] . ',5);">Завершить</button>';
    							break;
    
    						case 2:
    							if ($task["RESPONSIBLE_ID"] == $userId) $buttons.= '<button class="btn btn-raised btn-success" onclick="scrum.action(this,' . $task["ID"] . ',3);">Начать выполнение</button>';
    							if ($task["RESPONSIBLE_ID"] == $userId || $task["CREATED_BY"] == $userId) $buttons.= '<button class="btn btn-raised btn-success" onclick="scrum.action(this,' . $task["ID"] . ',5);">Завершить</button>';
    							break;
    
    						case 3:
    							if ($task["RESPONSIBLE_ID"] == $userId) $buttons.= '<button class="btn btn-raised btn-success" id="nach1" onclick="scrum.action(this,' . $task["ID"] . ',2);">Приостановить</button>';
    							if ($task["RESPONSIBLE_ID"] == $userId || $task["CREATED_BY"] == $userId) $buttons.= '<button class="btn btn-raised btn-success" onclick="scrum.action(this,' . $task["ID"] . ',5);">Завершить</button>';
    							break;
    
    						case 4:
    							if ($task["CREATED_BY"] == $userId) {
    								$buttons.= '<button class="btn btn-raised btn-success" onclick="scrum.action(this,' . $task["ID"] . ',5);">Принять работу</button>';
    								$buttons.= '<button class="btn btn-raised btn-success" onclick="scrum.action(this,' . $task["ID"] . ',2);">Доделать</button>';
    							}
    
    							if ($task["RESPONSIBLE_ID"] == $userId) $buttons.= '<button class="btn btn-raised btn-success" id="nach2" onclick="scrum.action(this,' . $task["ID"] . ',2);">Возобновить</button>';
    							break;
    
    						case 5:
    							if ($task["CREATED_BY"] == $userId || $task['RESPONSIBLE_ID'] == $userId) $buttons.= '<button class="btn btn-raised btn-success" onclick="scrum.action(this,' . $task["ID"] . ',2);">Возобновить</button>';
    							break;
    
    						default:
    							break;
    						}
    					}
    				}


    А в JS:
    $(function() {
            $('#tasksCart_11, #tasksCart_13, #tasksCart_14, #tasksCart_15').sortable({
                    connectWith: '.connectedSortable',
    				change: function( event, ui ) {
                                            $('#nach').trigger('click');
    					$('#nach1').trigger('click');
                                            $('#nach2').trigger('click');
                    }
            }).disableSelection();


    Но в таком случае происходит ерунда одним словом, т.е. насколько я понимаю, при перетаскивании одной карточки срабатывают сразу все события. Как реализовать это правильно? И можно ли вместо id в JS вызывать onclick?
    Ответ написан
    Комментировать
  • Как реализовать работу ползунка?

    @r0hack Автор вопроса
    Может кому понадобится сделал таким образом, с помощью Jquery!

    // Изменение местоположения ползунка при вводиде данных в первый элемент input
    		  $("input#text1").focus(function(){
    		  	var value1=$("input#text1").val();
    		  	var value2=$("input#text").val();
    		      if(parseInt(value1) > parseInt(value2)){
    		  		value1 = value2;
    		  		$("input#text1").val(value1);
    		  	}
    		  	$("#slider-range").slider("values",0,value1);
    		  });
    		      
    		  // Изменение местоположения ползунка при вводиде данных в второй элемент input 	
    		   $("body").change(function(){
                          $("#text1").focus();
    		  	var value1=$("input#text1").val();
    		  	var value2=$("input#text").val();
    
    		  	if(parseInt(value1) > parseInt(value2)){
    		  		value2 = value1;
    		  		$("input#text").val(value2);
    		  	}
    		  	$("#slider-range").slider("values",1,value2);
    		  });


    Если кратко объяснять, то после ввода в первое поле и клика мышкой в любом месте страницы, значение второго поля меняется автоматически и фокус тоже переносится на второе поле. А изменение координат в ползунке тоже настроены на событие .focus(). Посмотреть можно тут
    Ответ написан
    Комментировать