javascript - .innerHTML 编辑 HTML 但不显示

标签 javascript html innerhtml

所以我有一些代码可以生成一些跨度以显示几个范围输入,但是当跨度被编辑时,它显示的好像是在控制台而不是页面中编辑的一样

for (var i = 0; i < 5; i++) {
            text = document.createElement('span')
            span[pos][i] = text;
            console.log(text)
            div.innerHTML += list[i]
            text.setAttribute("id",`${pos}0${i}`)
            div.appendChild(text);
            div.appendChild(space);
        }
        div.appendChild(document.createElement('p'))
        for (var i = 0; i < 5; i++) {
            space = document.createElement('span')
            space.setAttribute("style","padding-left: 40px")
            slider = document.createElement('input')
            range[pos][i] = slider;
            slider.setAttribute("type","range")
            slider.setAttribute("id",`${pos}1${i}`)
            div.appendChild(slider);
            div.appendChild(space);
            console.log(div, i)
        }
for (var i = range.length - 1; i >= 0; i--) {
                for (var j=0; j<5; j++) {
                    span[i][j].innerHTML = range[i][j].value;
                    //console.log(j)
                }
        }

最佳答案

我不明白你要用这 5 个 slider 做什么?

var range = [];
var span = [];
function init() {
var div = document.createElement('div');
for (var i = 0; i < 5; i++) {
            var text = document.createElement('span');
            span[i] = text;
            console.log(text);
            //div.innerHTML += list[i]
            text.setAttribute("id",`txt0${i}`);
            div.appendChild(text);
            var space = document.createElement('span');
            div.appendChild(space);
        }
        div.appendChild(document.createElement('p'))
        for (var i = 0; i < 5; i++) {
            var space = document.createElement('span');
            space.setAttribute("style","padding-left: 40px");
            var slider = document.createElement('input');
            range[i] = slider;
            slider.setAttribute("type","range");
            slider.setAttribute("id",`slider1${i}`);
            div.appendChild(slider);
            div.appendChild(space);
            console.log(div, i)
        }
for (var i = range.length - 1; i >= 0; i--) {
                for (var j=0; j<5; j++) {
                    span[i].innerHTML = range[i].value;
                    //console.log(j);
                }
        }
        document.body.appendChild(div);
}
<body onload="init()">
</body>

关于javascript - .innerHTML 编辑 HTML 但不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66416423/

相关文章:

javascript - 自举之旅不起作用

html - 使用 margin : auto; is not centering div

html - angularjs中未捕获的语法错误

asp.net - 将内部 HTML 与 ASP :Button? 一起使用

javascript - 使用 javascript 将文本插入 <div> 元素的最快方法是什么?

javascript - 使用 WebAPI window.crypto.subtle.encrypt() 加密数据时出现 TypeError

javascript - 如何在 CI Controller 上包含脚本库?

javascript - 使用 DOM 更改标签中属性名称的值

javascript - 在 HTML5 WebAudio 中如何知道声音是否停止或播放完毕?

php - PHP + Ajax innerHTML 后可点击的 JS 函数不起作用