我已经构建了一个包含 16 个输入框的表单,供用户输入特征列表。
现在,我正在努力做到这一点,因此当您单击其中一个要键入的文本字段时,会出现下一个字段。
它可以使第二个框出现,仅此而已。
我使用 for next 循环来执行此操作。下面是代码,为什么它不适用于第二个之后的任何连续框?
1) <input type="text" name="objective1" size="50" onClick="document.getElementById('obj2').style.display='inline';" /><br />
<%
Dim i, b
b = 0
For i = 2 To 16
b = i+1
Response.Write("<span id='obj" & i & "' style='display:none'>")
Response.write(i & ") <input type='text' name='objective" & i & "' size='50' onClick='document.getElementById('obj" & b & "').style.display='inline';' /><br />")
Response.Write("</span>")
Next
%>
我在工作中/为了工作而开发它,我们使用的是 IE8,因此请记住这一点以获取功能。
任何输入都会很棒。我认为这段代码有意义......?它可能缺少一小段代码,我会因为没有意识到大声笑而感到愚蠢。
谢谢
** 解决方案: **
我解决了这个问题。这是引用的问题,例如提到的@John 和@Vlad。
除了他提出的解决方案代码给了我一个语法错误,所以我不得不采取不同的方法:
Response.write(i & ") ") %><input type="text" name="objective<%=i%>" size="50" onClick="document.getElementById('obj<%=b%>').style.display='inline';" /><br /><%
我在 For Next 循环中修复了上述行。
或@Martyn0627 提交:
Response.write(i & ") <input type='text' name='objective" & i & "' size='50' onClick=""document.getElementById('obj" & b & "').style.display='inline';"" /><br />")
谢谢你们的帮助!