我有一个带有Telerik UI的.NET WebForms页面,用于带有HTML表单的ASP.NET AJAX。


Tab键可以按预期方式浏览表单上的字段。如果该字段具有默认内容,则将它们选中为焦点,以便于更改。
加号键还可以通过表单上的一些自定义javascript(见下文)在字段中导航;但是,当使用加号导航到具有默认值的字段时,默认值不会在页面加载后立即显示在第一个焦点上。但是,如果我在页面加载后第二次再次添加它,默认内容将按预期突出显示。


我需要做些什么调整才能使现有的默认字段内容通过加号键突出显示?

function handlePlusKey(event) {
    if (event.keyCode == 107) {
        var control = this;
        var found = false;
        $(tabTypes).each(function (i) {
            if (this.className.indexOf('rtsLink') == -1
                    && this.id.indexOf('InitInsertButton') == -1
                    && this.title != "Click here to sort"
                    && this.tabIndex > -1
                    && $(this).is(":visible")
                    && !$(this).is(":disabled"))
                if (this == control) {
                    found = true;
                }
                else if (found) {
                    this.focus();
                    found = false;
                }
        });
        event.preventDefault();
    }
}

最佳答案

尝试手动添加选择

inputElement.focus();
inputElement.setSelectionRange(0, inputElement.value.length);


inputElelemnt更改为需要突出显示的元素。在大多数情况下,这是event.target,对于您而言,我认为是control

关于javascript - 带HTML格式的加号的标签式键盘导航,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47294628/

10-10 17:37