【发布时间】:2021-12-29 23:05:45
【问题描述】:
html 表单包含输入元素。
Javascript 和 jquery 代码用于在运行时创建选择元素并将其插入元素 elem 之后并为其分配 Bootstrap 5 类:
let selectArray = ["Intv Scheduled", "Selected", "Rejected", "On Hold"];
let id = 'Customer';
$('#' + id).remove();
var selectList = document.createElement("select");
selectList.id = selectList.name = id;
selectList.className = "form-select";
elem.after(selectList);
for (var i = 0; i < selectArray.length; i++) {
var option = document.createElement("option");
option.value = option.text = selectArray[i];
selectList.appendChild(option);
}
selectList.focus();
用户使用回车键选择项目。按下回车后选择元素仍然是焦点。
如果按下回车键,如何将焦点移动到表单中的下一个元素?
如何用纯 JavaScript 替换 $('#' + id).remove() 以便删除 jQuery 依赖项?
【问题讨论】:
-
您可能还想添加您的 HTML 代码。使用纯 JS 删除: document.getElementById(id).remove();类似于 jquery。
-
表单包含简单的输入和选择元素。 Tab 键将焦点移动到下一个元素。如何在输入时按 Tab 键顺序将焦点设置到下一个元素?选择中的 Enter 键应类似于 Tab 键。
if (document.getElementById(id)) document.getElementById(id).remove();是否应该用于删除,因为在第一个调用元素中不存在? Jquery 会自动处理这个问题。纯 javascript 是否需要为此使用if? -
如果该元素可能不存在,最好使用
if statement以防止抛出任何错误。
标签: javascript html jquery