質問: 簡易版パスワード入力画面について パスワードを入力させて、別のページにジャンプする簡易的なページを製作したいです。 現在以下のようにしているのですが、2つほどここに機能を追加したいです。 1.パスワード入力後、入力欄でエンターすると、ボタンを押さなくてもにジャンプするようにする。 2.下記の内容だと、複数ジャンプ先を設定したい場合、フォームページを 複数用意する必要があるので、このページを開いた際のurlが login.html?page=a だったら a.html に login.html?page=b だったら b.html に ということがしたいです。 ご教授の程、よろしくお願いいたします。 ■フォームページ login.html パスワードがあっていれば、a.htmlにジャンプ テスト ■pass.jsの内容 i=0; function check1(){ i++; p="password"; p2="password"; wo=document.form1.pass.value; if(wo==p){location.href="a.html";} else if(wo==p2){location.href="a.html"; }else{ alert("パスワードが異なります"); document.form1.pass.value=""; if(i>=10){location.href="index.html";} } } ※10回間違うと所定のページに飛ばす(ここではindex.html)
回答: q1: htmlのformタグ を のようにする。 q2: pass.jsの先頭に // -------------------------------------------------------- var npos = document.url.indexof("?"); var sp = document.url.substr(npos); // urlの?以降を切取り var stargethtml = "a.html"; // 指定が無い場合などのデフォルト sp.match(/[\?|\&]page=([^\&]*)/); // page=?...にマッチ if(regexp.$1 != '') stargethtml = regexp.$1 + ".html"; // -------------------------------------------------------- というコードを加えて 関数check1内の location.href="a.html"; を location.href=stargethtml; とする 指定が無い場合の記述が無いので「a.html」をデフォにしました