简体   繁体   English

从函数获取数据属性

[英]get data-attribute from function

I´m trying to get the data-io attribute from my function. 我正在尝试从我的函数中获取data-io属性。

<input id="42297" class="edit flatpickr-input active" data-io="in" value="14:23" type="text" readonly="readonly">

onChange: function(selectedDates, time, instance){

With this code i can get my input id threw: instance.input.id 使用此代码,我可以将输入ID扔给: instance.input.id
But i cannot figure out how to access the data-io attribute. 但是我不知道如何访问data-io属性。

I´ve tried: 我试过了:

instance.input.data-io
instance.input.data('io')
instance.input.attr('data-io')
instance.input.attr('io')

How should i do? 我应该怎么做?

Use instance.input.dataset.io . 使用instance.input.dataset.io More information about data-* attributes here: https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Use_data_attributes 有关data- *属性的更多信息,请参见: https : //developer.mozilla.org/zh-CN/docs/Learn/HTML/Howto/Use_data_attributes

Since using jQuery use data-api: 由于使用jQuery使用data-api:

$('#42297').data('io'); // -> in

Keep in mind that id should start with letter. 请记住, id应该以字母开头。


If your instance.input is JS object, convert it to jQuery: $(instance.input).data('io') 如果您的instance.input是JS对象,请将其转换为jQuery: $(instance.input).data('io')

If you are using jquery use either .data('io') or attr('data-io') . 如果您正在使用jquery,请使用.data('io')attr('data-io') If using vanilla js, utilise Element.getAttribute() . 如果使用香草js,请使用Element.getAttribute()

 var inp = document.getElementById('42297'); console.log(inp.getAttribute('data-io')); var $inp = $('#42297'); console.log($inp.data('io')); console.log($inp.attr('data-io')); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input id="42297" class="edit flatpickr-input active" data-io="in" value="14:23" type="text" readonly="readonly"> 

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

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