jquery 单击时获取日期的咏叹调标签

wkftcu5l  于 2022-12-18  发布在  jQuery
关注(0)|答案(1)|浏览(136)

我正在使用Mobiscroll Jquery demo,并试图获得在console.log中显示的aria-label的值。目前,每次单击日期时,我都会得到null。有人能帮我解决这个问题吗?
超文本标记语言

<div mbsc-page class="demo-date-picker">
    <div style="height:100%">
            <div id="demo"></div>
    </div>
</div>

JQuery语言

<script>
    
    mobiscroll.setOptions({
    locale: mobiscroll.localeEn,  // Specify language like: locale: mobiscroll.localePl or omit setting to use default
    theme: 'ios',                 // Specify theme like: theme: 'ios' or omit setting to use default
        themeVariant: 'light'     // More info about themeVariant: https://docs.mobiscroll.com/5-20-0/calendar#opt-themeVariant
});

$(function () {
    // Mobiscroll Calendar initialization
    $('#demo').mobiscroll().datepicker({
        controls: ['calendar'],   // More info about controls: https://docs.mobiscroll.com/5-20-0/calendar#opt-controls
        display: 'inline'         // Specify display mode like: display: 'bottom' or omit setting to use default
    });
});

var inputs = document.querySelectorAll("[aria-label]");
console.log(inputs.length);
for(var i = 0; i < inputs.length; i++){
inputs[i].addEventListener("click", function(e){
    console.log(this.getAttribute("aria-label"));
});     
}
</script>
w9apscun

w9apscun1#

对我来说,你的代码是工作,它登录到控制台:

Friday, December 23, 2022
null
null

这是因为当单击带有aria-label的div时,外部div也被单击
通过使用元素的类,可以只选择所需的元素:
x一个一个一个一个x一个一个二个x
你也可以使用其他选择器,例如:
var inputs = document.querySelectorAll("[aria-label]");
我会将click事件添加到所有具有aria-label属性的元素中

相关问题