ユーザーが特性のリストを入力するための 16 個の入力ボックスを持つフォームを作成しました。
今、テキスト フィールドの 1 つをクリックして入力すると、次のフィールドが表示されるようにしようとしています。
2番目のボックスが表示されるように機能し、それだけです。
これを行うために for next ループを使用しました。以下はコードですが、2 番目のボックスに続く連続するボックスで機能しないのはなぜですか?
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 />")
助けてくれてありがとう!