Как установить индекс табуляции для числового текстового поля. Мой код..
$("#max_award_amount").kendoNumericTextBox({
min:0,
max: 99999999.99,
}).attr("tabindex","4");
Но это не работает, как ожидалось.
Как установить индекс табуляции для числового текстового поля. Мой код..
$("#max_award_amount").kendoNumericTextBox({
min:0,
max: 99999999.99,
}).attr("tabindex","4");
Но это не работает, как ожидалось.
Было бы полезнее узнать, что именно не работает, но я все равно постараюсь ответить.
Я полагаю, что причина того, что ваш код не работает, заключается в том, что вы устанавливаете tabindex для элемента управления вводом после инициализации кендо. Кендо фактически скрывает исходный ввод и создает свой собственный для использования как часть элемента управления, и во время этого процесса он копирует некоторые атрибуты, включая tabindex.
Когда вы вызываете attr
, как указано выше, вы устанавливаете tabindex против исходного, теперь скрытого элемента управления вводом. Попробуйте установить tabindex для самого элемента html. Затем Кендо должен скопировать значение при переносе элемента управления вводом.
<input id="box1" tabIndex="0" />
<script type="text/javascript">
$(function() {
$("#box1").kendoNumericTextBox();
});
</script>
ИЗМЕНИТЬ
Я изучил это еще немного, и мне не удалось получить набор числовых текстовых полей кендо, чтобы соблюдать указанный мной tabindex.
Кажется, что Kendo копирует tabindex из исходного ввода в новый ввод при создании текстового поля, но также явно устанавливает tabindex исходного ввода обратно в ноль (я посмотрел исходный код). Я думаю, это не было бы такой большой проблемой, за исключением того, что когда вы щелкаете в текстовом поле, сгенерированный ввод скрывается, а отображается исходный! Так что теперь я не совсем уверен, чего Кендо пытается достичь здесь, создавая новый вход, а затем просто скрывая его и показывая старый, когда вы щелкаете в поле.
Я пытался сообщить об этой ошибке в Kendo, но, увы, их форумы теперь доступны только для премиум-класса. Похоже, что нет возможности сообщить об ошибке, если вы не заплатите им. Плохое шоу.
Я получил эту работу, установив tabindex обратно на исходный элемент после инициализации.
<input id="box1" tabindex="10" />
<input id="box2" tabindex="12" />
<input id="box3" tabindex="11" />
<input id="box4" tabindex="13" />
$(function() {
$("#box1").kendoNumericTextBox()[0].tabIndex = 10;
$("#box2").kendoNumericTextBox()[0].tabIndex = 12;
$("#box3").kendoNumericTextBox()[0].tabIndex = 11;
$("#box4").kendoNumericTextBox()[0].tabIndex = 13;
});
Полная демонстрация здесь
Мы используем следующее:
.HtmlAttributes(new { id = "EligibleDate", tabindex = 2 })
Надеюсь, это поможет.
Установка tabindex для kendoDropdownList:
$("#max_award_amount").data("kendoDropdownList").wrapper.attr("tabindex",4);