@mraser

Как перевести jquery код на чистый javascript?

Подскажите почему не срабатывает код на чистом JS.

(function(){
	function delivery_np(){
  if (document.querySelectorAll('input[name="delivery"]:checked'.value === '3') &&
    document.querySelectorAll('input[name="oplata"]:checked'.value === '1')){
    document.getElementById('delfree_np').textContent = 'text1';
    }
    else {
    document.getElementById('delfree_np').textContent = 'text';
    }
  }
  delivery_np()
  document.querySelectorAll('input[type="radio"]').onchange = delivery_np 
}

)();

Вот исходник
(function(){
	function delivery_np () {
  	if ($('input[name="delivery"]:checked').val() === '3' &&
    $('input[name="oplata"]:checked').val() === '1') {
    	$('#delfree_np').html('"Text1')
    } else {
    	$('#delfree_np').html('Text')
    }
  }
  delivery_np()
  $('input[type="radio"]').on('change', delivery_np)
})();
  • Вопрос задан
  • 174 просмотра
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
function onChange() {
  document.querySelector('селектор элемента для вывода результата проверки').innerText = [
    // здесь массив селекторов вида
    // input[имя_атрибута1="значение1"][имя_атрибута2="значение2"]:checked
  ].every(n => document.querySelector(n))
    ? 'какой-то текст'
    : 'какой-то другой текст';
}

onChange();
document.addEventListener('change', e => {
  if (e.target.matches('input[type="radio"]')) {
    onChange();
  }
});

https://jsfiddle.net/j1s2uatm/
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@loonny
Ну если прям просто, то так:
$('') - document.querySelectorAll('')

.val() - .value

.html('') - innerHTML = ''

.on('change', callback) - .onchange = callback

А вообще можете открыть исходный код JQuery и скопировать методы
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы