是否有可能在请求页面之前最后聚焦的刷新后重新聚焦输入字段?
我的网页中有一个 Wicket 表单,在这个表单中有很多输入字段(如文本字段),用户可以使用它们来过滤我的数据 View 。但是,例如,当用户将焦点放在第二个输入字段上,然后在数据 View 中单击“转到下一页”时,他会失去焦点,但由于可访问性,有必要重新聚焦第二个输入字段。
我的想法是首先使用 jQuery 标记输入字段,并在聚焦时使用“重获焦点”:
$("input").focus(function() {
$("input").removeAttr("regain-focus");
$(this).attr("regain-focus", "regain-focus");
});
然后在服务器更新中搜索带有“重获焦点”标签的元素 - 但就是这样,我不知道该怎么做...... - 将相应的组件标记为“自动对焦”:
input.add(AttributeModifier.append("autofocus", "autofocus"));
并使用 javascript 重新聚焦:
$('[autofocus]').focus();
最佳答案
既然你有 JavaScript 经验,那么完全在客户端完成它会简单得多:$(document).on('focusin', 'input textarea', function(event) {localStorage.setItem('focus :'+location.pathname, event.target.id)})
然后使用基于 jQuery.ready() 的逻辑来读取条目并使用它。
关于javascript - 在 wicket 中刷新页面后重新聚焦输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36012217/