У меня есть вход:JQuery, селектор атрибута, получить текущее значение атрибута
<input type="text" size="5" maxlength="5" decimals="2">
, где «десятичные» может иметь значение от 0 до 4.
В ONBLUR случая, независимо от числа пользователя типы будут изменены таким образом:
decimals="2"
User enters: 123.456
Input is changed to: 123.46
Это тривиально, без проблем. Мой вопрос о наиболее эффективном способе получения значения «десятичных знаков». Обычно, я бы написал (JQuery):
$('[decimals]').blur(function(){
val = $(this).attr('decimals');
// *** do stuff with val ***
});
... но мне кажется, там должно быть более эффективным способом, чтобы получить значение «десятичных знаков», так как мы уже выбрали вход на основе по этому атрибуту. Есть ли мой код, как написано, единственным способом?
СЭРМ штраф мне – Noppey
Если вы используете пользовательские атрибуты, по крайней мере использовать * действительный * пользовательские атрибуты, используя префикс 'data- *', такой как 'data-decimals', который можно получить в обычном JavaScript с помощью' elementReference.dataset.decimals' или в jQuery с: '$ (ele mentReference) .data ('decimals'); ' –
вы говорите о' $ (this) '? вы не можете избежать этого, если хотите вызвать '$ .attr', но это почти бесплатно (кеш jQuery), но вы можете читать значение с помощью this.getAttribute ('decimals')' также – cske