繁体   English   中英

如何转换为 $('#' + $(this).val()).show() vanilla javascipt

[英]How to convert to $('#' + $(this).val()).show() vanilla javascirpt

如何将此代码转换为香草?

$('#optionselector').change(function(){
    $('.option-type').hide();
    $('#' + $(this).val()).show();
});

我无法弄清楚最后一行:

function addEventHandler(elem, eventType, handler) {
  if (elem.addEventListener)
    elem.addEventListener(eventType, handler, false);
  else if (elem.attachEvent)
    elem.attachEvent('on' + eventType, handler);
}

addEventHandler(document, 'DOMContentLoaded', function() {
  addEventHandler(document.getElementById('optionselector'), 'change', function() {
    document.querySelector('.option-type').style.display = 'none';

  });
});

这是jsfiddle

大概只是:

document.querySelector('#' + this.value).style.display = 'block';

请参阅下面的实时示例:

 function addEventHandler(elem, eventType, handler) { if (elem.addEventListener) elem.addEventListener(eventType, handler, false); else if (elem.attachEvent) elem.attachEvent('on' + eventType, handler); } addEventHandler(document, 'DOMContentLoaded', function() { addEventHandler(document.getElementById('optionselector'), 'change', function() { document.querySelectorAll('.d-none').forEach(e => e.style.display = 'none'); if(this.value !== "") document.querySelector('#' + this.value).style.display = 'block'; }); });
 .d-none { display:none; }
 <select name="option_type" class="option-type form-control mb-4" id="optionselector"> <option value="" selected="selected"></option> <option value="text_type">Text Input</option> <option value="select_type">Select Dropdown</option> <option value="radio_type">Radiobox</option> </select> <div class="d-none" id="text_type">TEXT</div> <div class="d-none" id="select_type">SELECT</div> <div class="d-none" id="radio_type">RADIO</div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM