- ベストアンサー
入力フォーム内のタグ開始記号(<>)の置き換えについて
初めて質問させていただきます、初心者プログラマーです。 web上で使用する、質問用入力フォームを作成しているのですが、 セキュリティの問題上、入力フォーム内にタグが打ち込まれたとき それを無効化するために、タグ開始と終わりのカッコがそのまま スルーしないよう、アンパーサンドlt;とアンパーサンドgt;に 置き換える処理を行いたいと思うのですが、どのように記述したら よいのかがわかりません。この処理はフォームの入力欄全てに対して 有効にしたいのですが、どのように記述したらよいのでしょうか… どうかご教授お願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (1)
noname#1785
回答No.1
お礼
補足内に書いたallcheckの一番下に、check();の一行を記述して、 無事にすべて解決しました。 よく考えずに質問ばかりしてすみませんでした。 今後とも精進し、プログラムを自分の手でバリバリ一から書けるように がんばります。 ご回答いただき本当にありがとうございました。
補足
ご回答ありがとうございます!早速試して、実行できました。 早急に解決しなければならない問題だったので、とても助かりました。 本当にありがとうございます。 ただ、後ひとつだけ質問してもよろしいですか? 今現在、入力フォームのsubmitボタンでonClick時処理としてすでに 以下のallcheck()を呼び出しています。 function allcheck(){ if(check_roman(document.form1.mail1.value)==false){ return false; } if(check_roman(document.form1.mail2.value)==false){ return false; } if(bytecheck(document.form1.text.value)==false){ return false; } } //allcheck内で呼び出しているスクリプト function check_roman(strTarget){ var i,transTarget; var checkStr=new String("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_.1234567890"); transTarget=strTarget.replace(/ /g,""); for(i=0;i<transTarget.length;i++){ if(checkStr.indexOf(transTarget.charAt(i),0)==-1){ alert("メールアドレスは半角英数字で"); return false; } } return true; } //allcheck内で呼び出しているスクリプト function bytecheck(){ txt = document.form1.text.value; n = txt.length; if (n > 2000){ alert("問合せ内容は2000文字以内で"); return false; } return true; } このallcheckスクリプトの中に、教えていただいたcheckスクリプトの 呼出を加えるとすると、どのように記述したらよいのでしょうか・・・。 何度も申し訳ありませんが、ご教授いただけると幸いです。 どうか、よろしくお願いいたします