使用构造函数创建选项(JavaScript) 我想知道的是 如何也将构造函数应用于DOMs.selectTimes 清理代码的更有效方法 我的代码是用来做什么的

使用构造函数创建选项(JavaScript) 我想知道的是 如何也将构造函数应用于DOMs.selectTimes 清理代码的更有效方法 我的代码是用来做什么的,javascript,forms,select,constructor,custom-element,Javascript,Forms,Select,Constructor,Custom Element,我制作了一个脚本,动态地为HTML表单创建选项元素。我可以将生日/生日/生日应用于构造函数。但是我不能为selectTimes做这件事。我怎么做?还是有更有效的方法 这是我的密码 (函数(){ /*获取DOM*/ 常数DOMs={ selectYear:document.querySelector(“#选择生日”), selectMonth:document.querySelector(“#选择出生月”), selectDay:document.querySelector(“#选择生日”),

我制作了一个脚本,动态地为HTML表单创建选项元素。我可以将
生日/生日/生日
应用于构造函数。但是我不能为
selectTimes
做这件事。我怎么做?还是有更有效的方法


这是我的密码
(函数(){
/*获取DOM*/
常数DOMs={
selectYear:document.querySelector(“#选择生日”),
selectMonth:document.querySelector(“#选择出生月”),
selectDay:document.querySelector(“#选择生日”),
selectTimes:document.querySelectorAll('.select time'),
选择:document.querySelectorAll('.select')
};
/*创建选项*/
函数createOptions(){
让html;
//创建时间选项
设arrTimes=[
'10:00',
'10:30',
'11:00',
'11:30',
'12:00',
'12:30',
'13:00',
'13:30',
'14:00',
'14:30',
'15:00',
'15:30',
'16:00',
'16:30',
'17:00',
'17:30',
'18:00'
];
DOMs.selectTimes.forEach(selectTime=>{
for(设i=0;i如果(select.childElementCount您只需使用自定义元素

class myTime扩展了HtmlSelect元素{
构造函数(){
超级()
this.optimes=['10:00','10:30','11:00','11:30','12:00','12:30',',
'13:00', '13:30', '14:00', '14:30', '15:00', '15:30',
'16:00', '16:30', '17:00', '17:30', '18:00' ]
}
connectedCallback(){
如果(!this.dataset.range){
为了(让tim知道这个。optimes){
添加(新选项(tim,tim))
}
}
否则{
let[start,end,unit]=this.dataset.range.split(“”)

对于(let i=start;我非常感谢你!它很有效,你的代码比我的干净多了。谢谢你的链接。我从来没有听说过自定义元素。我读过它,然后发现了另一个关于自定义元素的很棒的页面:。我终于明白了。我将开始使用它。它非常有用。谢谢你!@MiuTaji没什么好说的,通常我是以白色样式编写代码的smiths;我为您付出了巨大的努力!请注意,Apple/Safari不支持扩展元素