Javascript 循环字符串获取空值

Javascript 循环字符串获取空值,javascript,html,Javascript,Html,我想输出一个循环字符串。这是我的代码: HTML <input id="items" type="text" value=""> <input id="start" type="text" value=""> <input id="end" type="text" value=""> <input id="btn" type="submit" value="Generate"> <br> <br> <textarea

我想输出一个循环字符串。这是我的代码:

HTML

<input id="items" type="text" value="">
<input id="start" type="text" value="">
<input id="end" type="text" value="">
<input id="btn" type="submit" value="Generate">
<br>
<br>
<textarea id="output"></textarea>



JavaScript

var items = document.getElementById('items').value;
var i = document.getElementById('start').value;
var e = document.getElementById('end').value;
var btn = document.getElementById('btn');
var output = document.getElementById('output');

btn.addEventListener('click', function() {
    for(i; i < e; i++) {
        output.value = items+'/'+i;
    }
}, false);
var items=document.getElementById('items').value;
var i=document.getElementById('start').value;
var e=document.getElementById('end')。值;
var btn=document.getElementById('btn');
var output=document.getElementById('output');
btn.addEventListener('click',function(){
对于(i;i
如何通过输入值开始和结束像“pencil/1”一样输出到“pencil/20”?因为我得到了空值输入来用于。

var btn=document.getElementById('btn');
var btn = document.getElementById('btn');
btn.addEventListener('click', function(){
    var items = document.getElementById('items').value;
    var i = document.getElementById('start').value;
    var e = document.getElementById('end').value;
    var output = document.getElementById('output');
    for(i; i<e; i++){
        output.value = output.value + items + '/' + i + '\n';
    }
}, false);
btn.addEventListener('click',function(){ var items=document.getElementById('items')。值; var i=document.getElementById('start').value; var e=document.getElementById('end')。值; var output=document.getElementById('output');
对于(i;i而言,问题在于您在页面加载时读取项目的值,即开始和结束,而不是在单击按钮时。将这些值包含在单击事件中,这样会更好地工作

var btn = document.getElementById('btn');
var output = document.getElementById('output');

btn.addEventListener('click', function() {
var items = document.getElementById('items').value;
var i = document.getElementById('start').value;
var e = document.getElementById('end').value;
    for(i; i < e; i++) {
        output.value += items+'/'+i+'\n';
    }
}, false);
var btn=document.getElementById('btn');
var output=document.getElementById('output');
btn.addEventListener('click',function(){
var items=document.getElementById('items')。值;
var i=document.getElementById('start').value;
var e=document.getElementById('end')。值;
对于(i;i

它还正确地将值附加到文本区域,而不是在每次循环迭代时覆盖现有值。

不清楚您的实际问题是什么。我可以看到的一件事是,您在循环的每个步骤上都覆盖了output.value。我不确定您得到的空值在哪里尽管如此,我认为问题可能是在加载窗口之前访问
.value
属性,将所有的js放入
窗口。onlaod
克里斯:我想要的是转储pencil/1、pencil/2、pencil/3等等。Mritunjay:你能生成示例代码吗?我把脚本放在正文下面。@lynxpravoka:我知道你想做什么了。我只是不想做而已清楚你遇到的问题是什么。我现在明白了,我的答案应该可以解决它(链接中有概念验证演示)。我真正的问题是我从输入元素中得到空值
i
e
。你使用的是哪种浏览器?@lynxpravoka:这应该被编辑到问题本身中,以便更清楚地说明你在问什么。毛拉·阿兹:Chrome浏览器和Firefo。克里斯:我已经更新了。你对html错误的评论仍然有效吗?html外观It’我很好,所以这个问题可能在你发布后已经更新了。谢谢你,克里斯:)很高兴见到你。