質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

3回答

3038閲覧

javascript外部ファイル化について

ITnewperson

総合スコア27

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2015/07/26 03:07

いつもお世話になっております。

本日はjavascript外部ファイル化についてです。
コードを内部と外部で作成しましたが、どこが間違っているのかわかりません。
どなたかご教授頂けないでしょうか?
(現状はjs部分の機能はエラーが返ってきます。)


内部コードは以下です。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <style type="text/css"> @import url("style.css") ; </style> <script type="text/javascript" src="script.js"></script> <!-- 数値の連結 --> <script src="https://code.jquery.com/jquery-1.11.3.min.js"></script> <script> $(function(){ $('input[type=button]').click(function(){ if ($('#text').val().length < 4) { $('#text').val($('#text').val() + $(this).val()); } }); }); </script> </head> <!-- キーボード入力不可 --> <body onkeydown="return false;"> <div id="Numtitle">暗証番号を入力してください。</div> <form method ="post"name="Form" onSubmit="return chValie()" action="BalanceInquiry2(DB).jsp"> <div id="title">暗証番号:<input type="text" id="text" name="pass" value="" onfocus="color1(this);"onblur="color2(this);" tabindex="1" title="4桁の暗証番号を入力してください。" ></div><br> <br><table> <div> <tr> <td><input type="button" value="7" id="7" tabindex="2" class="num-button" ></td> <td><input type="button" value="8" id="8" tabindex="3" class="num-button" ></td> <td><input type="button" value="9" id="9" tabindex="4" class="num-button" ></td> </tr> <tr> <td><input type="button" value="4" id="4" tabindex="5" class="num-button" ></td> <td><input type="button" value="5" id="5" tabindex="6"class="num-button" ></td> <td><input type="button" value="6" id="6" tabindex="7" class="num-button" ></td> </tr> <tr> <td><input type="button" value="1" id="1" tabindex="8" class="num-button" ></td> <td><input type="button" value="2" id="2" tabindex="9" class="num-button" ></td> <td><input type="button" value="3" id="3" tabindex="10" class="num-button" ></td> </tr> <tr> <td colspan="3"><input type="button" value="0" tabindex="11" name="zero"class="num-button"></td> </tr> </div> </table> </div> <div id="menu"> <table border="1"> <tr> <td width="33.3%;"><input type="submit" value="戻る" class="button" name="Back" tabindex="12"onclick="history.back()"></td> <td width="33.3%;"><input type="reset" value="訂正" class="button" name="Correction" tabindex="13"></td> <td width="33.3%;"><input type="submit" value="確認" class="button" name="Check" tabindex="14"></td> <td width="33.3%;"><input type="submit" value="メインメニュー"class="button" name="Back" tabindex="15" onclick="location.href='Mainmenu.jsp'"></td> </tr> </table> </div> </form> </body> </html>

外部ファイルは以下です。

function color1(text) {
text.style.background ="#F5F5F5";
}
function color2(text) {
text.style.backgroundColor = "#D7EEFF";
}

function chValie() {
TextCheck = new Array("pass");
TextCheck_nm= new Array("暗証番号");
var result = confirm("こちらの"+TextCheck_nm+"でよろしいですか?");
for(i=0; i<TextCheck.length; i++) {
txt = document.Form.elements[TextCheck[i]].value;
if(txt == ""){
alert(TextCheck_nm[i]+"は必須項目です。");
location.href='BalanceInquiry2.jsp';
return false;
}
}
return true;
}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

適当に省いてhtmlとして実行してみましたが、特にエラーは出ませんでした。(chrome)
テキストボックスの色変化、入力チェック共に動作しています。
もしも反映されていないようであれば、ファイルの配置を見直してみるのもいいかもしれません。

イメージ説明
イメージ説明

投稿2015/07/27 05:48

HarunaM

総合スコア10

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ITnewperson

2015/08/01 10:45

ありがとうございます。 調整を行ったところうまく機能しました。
guest

0

動作はともかくJavaScriptのエラーは発生しませんでした。
どの様なエラーが出ますでしょうか?

投稿2015/07/26 03:21

rik

総合スコア1151

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ITnewperson

2015/07/26 06:37

回答ありがとうございます。 【希望】 外部ファイルにある ①フォーカスされた時、外れた時のテキストボックスの色が変化しない ②入力チェックを行いたい 上記を行いたいです。 エラーは出ていません。
rik

2015/07/26 06:59 編集

1. フォーカス、フォーカス外れの時のテキストボックスの色は変化しています。 2. new Array("pass"); new Array("暗証番号"); こちらには実際は4桁の数字が入るのでしょうか?それともこのままでしょうか? JavaScriptでパスワード(暗証番号)チェックを行う事はお勧めいたしません。なぜならJavaScriptはソースコードの表示等で簡単に見れてしまうからです。外部ファイルにしても同じです。見られてしまいます。
ITnewperson

2015/07/26 09:37

1. >フォーカス、フォーカス外れの時のテキストボックスの色は変化しています。 やはり、色は変化していませんでした。 2. >こちらには実際は4桁の数字が入るのでしょうか?それともこのままでしょうか? 暗証番号のみ表示し、数値は表示しません。
guest

0

こんにちわ。

答えではありませんが、ChromeやFirefoxでF12を押下した後に出てくる、
デバッグ支援ツールでJavaScriptのエラー内容はわかります。
それを貼ってもらった方がアドバイスも早くつくと思います。

投稿2015/07/26 03:16

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ITnewperson

2015/07/26 10:06

遅くなりましたが、いつも回答ありがとうございます。 >ChromeやFirefoxでF12を押下した後に出てくる、 デバッグ支援ツールでJavaScriptのエラー内容はわかります。 Eclipse内でしか作成画面が表示出来ない為、ChromeやFirefoxでは見ることが出来ませんでした。
退会済みユーザー

退会済みユーザー

2015/07/27 07:50

>Eclipse内でしか作成画面が表示出来ない為、ChromeやFirefoxでは見ることが出来ませんでした。 Webアプリなので、Eclipse上でしか表示できないことは無いと思います。 Eclipseの作成画面表示部の上の方に http://localhost:・・・ みたいなURLは表示されていませんか?それをChrome等別なブラウザに貼り付けることで表示できると思います。 今回の問題は、回答頂いているお二方の環境では発生せず、ITnewpersonさんの環境でしか発生していないもののようです。ですので、ITnewpersonさんで発生しているエラーが確認できるとよいのですが・・・。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問