У меня есть несколько форм для различных сущностей, для которых было бы очень полезно изменить порядок табуляции для полей сверху вниз, слева направо.Есть много сообщений на форуме с той же функцией JavaScript на эту тему, но я не понимаю, как код меняет порядок.
Я реализовал функцию TabOrderLefttoRight
, показанную на многих разных сайтах.Фактический порядок вкладок не изменился после добавления этого кода.Тем временем я пошел по «поддерживаемому» маршруту, создав много разделов с двумя столбцами в них.Это работает, но занимает много места между разделами, а также добавляет границы между связанными полями, поэтому не должно быть границ между ними.Мой клиент предпочел бы, чтобы поля были в одном разделе.Что-то не так с этой функцией?
Этот код показывается на нескольких веб-сайтах в качестве решения этой проблемы.Разве порядок табуляции не будет прежним с этим кодом, индекс табуляции будет просто увеличен на 1000?
function TabOrderLeftToRight() {
for (var i = 0; i < Xrm.Page.ui.controls.getLength() ; i++) {
var control = Xrm.Page.getControl(i);
window.console.log(control);
var element = document.getElementById(control.getName());
window.console.log(element);
if (element.tabIndex && element.tabIndex != "0") {
if (element.className == 'ms-crm-Hidden-NoBehavior')
continue;
if (element.tagName == 'A') {
if (element.className != 'ms-crm-InlineTabHeaderText')
continue;
}
element.tabIndex = 1000 + (i * 10);
}
}
}
Порядок табуляции должен быть слева направо, сверху вниз после добавления этого кода вСобытие OnLoad формы, но оно не изменяется.порядок табуляции остается сверху вниз, слева направо.