Задать вопрос
@zekin375

Не обновляется ajax bitrix24?

С горем по полам адаптировал код jquery под bxjs bitrix
Исходный код на jquery

$(document).ready(function() {	
	var $result = $('#search_box-result');
	
	$('#search').on('keyup', function(){
		var search = $(this).val();
		if ((search != '') && (search.length > 1)){
			$.ajax({
				type: "POST",
				url: "https://snipp.ru/ajax.php?inc_id=12382",
				data: {'search': search},
				success: function(msg){
					$result.html(msg);
					if(msg != ''){	
						$result.fadeIn();
					} else {
						$result.fadeOut(100);
					}
				}
			});
		 } else {
			$result.html('');
			$result.fadeOut(100);
		 }
	});

	$(document).on('click', '.search_result-name a', function(){
		$('#search').val($(this).text());
		$result.fadeOut(100);
		return false;
	});

	$(document).on('click', function(e){
		if (!$(e.target).closest('.search_box').length){
			$result.html('');
			$result.fadeOut(100);
		}
	});
});


Переделал так

BX.ready(function() {	
	node = BX('search_box-result'); 
   BX.bindDelegate(document.body, 'keyup', {
        className: 'search_new'
    }, function () {
		var inputName = document.querySelector("[name='search']");
	 	search = inputName.value;
		if ((search != '') && (search.length > 1)){
			BX.ajax({
				type: "POST",
				url: "/new-search/ajax.php",
				data: {'search': search},
				onsuccess: function(msg){
					node.innerHTML = msg;
					console.log(data);
					if(msg != ''){	
						node.fadeIn();
					} else {
						node.fadeOut(300);
					}
				}
			});
		 } else {
			node.innerHTML = '';
			node.fadeOut(300, function(){})
		 }
	});

	BX.bind(BX(), 'click', function(e) {
		if (!$(e.target).closest('.search_box').length){
			node.html('');
			node.fadeOut(100);
		}
	});

	BX.bind(BX('.search_result-name a'), 'click', function(e){
		$('#search').val($(this).text());
		node.fadeOut(100);
		return false;
	});

	BX.bind(BX(), 'click', function(e) {
		if (!$(e.target).closest('.search_box').length){
			node.html('');
			node.fadeOut(100);
		}
	});

});


Ответ получаю, при каждом в воде data обновляется, но ответ ajax не обновляется, один раз выдает далее при запросах дублируется. Причем если использую исходных код js отправляю на тот же скрипт php запрос все работает. Уже сил нет, помогите пожалуйста
  • Вопрос задан
  • 166 просмотров
Подписаться 1 Простой 4 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы