- ベストアンサー
フォーム入力時の複数個所の未入力箇所を一括表示させる方法
- フォーム入力時に、複数個所の未入力箇所がある場合に、一括で未入力箇所を表示させる方法を知りたいです。
- 具体的には、必須入力項目が未入力の場合に、その箇所のインデックスナンバーと警告文を表示させたいです。
- 初心者なので、解説も加えていただけると助かります。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
・ 入力の数が多いときは、テーブルを利用するとよいかもしれません。 ・ テーブルのセルにアクセスするには、 rows[i].cells[j] の形を使います。 ・ 簡単な例ですが、以下のコードを参考にしてみてください。 ------------------------------------------------------------ <html> <head> <title>HTML DOM TableRow cells</title> <script type="text/javascript"> function check() { var tbl = document.getElementById("Table1"); var rows = tbl.rows; var ss = ""; for (var i=1; i<rows.length ; i++) { if (rows[i].cells[2].firstChild.value=="") ss += "," + (i); } if (ss.length>1) { ss = ss.substring(1); alert("インデックスNO" + ss + "のpriceが未入力です。"); return false; } return true; } </script> </head> <body> <form> <table id="Table1" border="1"> <tr> <th>index NO.</th> <th>title</th> <th>price</th> </tr> <tr> <td>1</td> <td>ABCD</td> <td><input type=text" /></td> </tr> <tr> <td>2</td> <td>QQQ </td> <td><input type=text" /></td> </tr> <tr> <td>3</td> <td>SSS</td> <td><input type=text" /></td> </tr> </table> </form> <br /> <input type="button" onclick="return check()" value="セルをチェック"/> </body> </html>
お礼
ありがとうございます。参考にさせていただきます。