Как получить дочерний атрибут из JQuery e.currentTarget.value
Я пытаюсь получить атрибут от ребенка currentTarget
, Я пробовал это, (e.currentTarget.child.attr("data-english"
)
Я прогуглил это и не смог найти что-нибудь полезное, может быть, я новичок в коде, возможно, я искал не ту вещь.
Вот HTML
< select class="form-control" id="select_fundFamily" name="select_fundFamily" autocomplete="off" >
< option value="stuff" data-english="english" data-family-locallang="model" >
На данный момент в JQuery, e.currentTarget.value;
показывает элемент выбора.
Может кто-нибудь, пожалуйста, посоветуйте мне, какой путь выбрать, чтобы решить эту проблему?
3 ответа
Для значения выбранного параметра в выборе, вы можете использовать
$(e.currentTarget).find(':selected').attr("data-english");
Запустите фрагмент ниже, чтобы увидеть, как он работает
$(document).ready(function(){
$('select').change(function(e){
var eng = $(e.currentTarget).find(':selected').attr("data-english");
$('body').append(eng);
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select id="select_fundFamily">
<option selected disabled>Select something</option>
<option value="stuff1" data-english="english1" >1</option>
<option value="stuff2" data-english="english2" >2</option>
<option value="stuff3" data-english="english3" >3</option>
<option value="stuff4" data-english="english4" >4</option>
<option value="stuff5" data-english="english5" >5</option>
</select>
Если вы попытаетесь определить атрибут выбранного параметра. Простое решение:
var dataEnglish = $('#select_fundFamily option:selected').attr('data-english'); // dataEnglish = english
currentTarget будет реагировать на любой элемент, который прослушиватель событий вызвал событие. В вашем случае, я думаю, вы хотите использовать e.target для нацеливания на нужный элемент.
$("select#select_fundFamily").on('click','option', function(e) {
e.preventDefault();
$(e.target).attr('data-english'); // you can use $(this) instead
//something else
});