• 締切済み

alert()が実行できない

JavaScriptについての質問です。 何故か、jsファイルにてalert()が実行できなくなりました。 alert("aaa"); と記述した「test.js」ファイルを作成して実行すると、 「オブジェクトを指定してください」とエラーメッセージが表示されます。 しかし、 <script type="text/javascript"> alert("aaa"); </script> と記述した「test.html」ファイルを作成して実行(IE7)すると、 エラーは表示されず、意図したとおりアラート画面が表示されます。 どうしてこのような現象が起こるなのか全く分かりません。 解決策をご存知の方は、教えていただけないでしょうか。

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

>「test.js」ファイルを作成して実行すると これは何で実行したのでしょう? コマンドプロンプトで実行したのでしょうか そうなるとそのエラーメッセージが出て当然でしょう alert自体が javascriptが管理しているメソッドで無いからです IEなどブラウザの機能でWindowオブジェクトのalertメソッドはありますが ・・・

  • ANASTASIAK
  • ベストアンサー率19% (658/3306)
回答No.1

window.alert("aaa");

harder
質問者

補足

window.alert("aaa"); も試しましたがダメでした。 「'window'は宣言されていません。」 のエラーで実行できません。

関連するQ&A

  • 外部ファイルを実行

    javascriptで <script type="text/javascript" src="test.js" ></script> を記述すると、 HTML読み込み時にtest.jsを実行するのですが、 ボタンクリック時に外部ファイルを実行するコードはどのように記述すればいいのでしょうか? よろしくお願いします。

  • javascriptが実行されない

    php(7.2)+javascriptで作成しています。 print "<script type='text/javascript'>alert('aaa')</script>"; が実行されません。 前後にerror_log("aaa")を出力していますが、こちらはログに吐き出されます。 正確な流れは main画面からボタン押下でjqueryのdialog表示 dialogでボタン押下することで画面を更新し上記のscriptを実行になります。 よろしくお願いいたします。

    • 締切済み
    • PHP
  • 外部ファイルの記述の問題なのかエラーが出ます

    IE6を使っています。 次のように[a.js]を呼び出したのですが、 オブジェクトがありませんとエラーが出ます。 そのエラーの次に[test.html]にあるalertの内容は表示されます。 どこが間違っているのでしょうか? [a.js] var a = document.body.clientWidth; [test.html] <html> <head> <title>test</title> <script type="text/javascript" src="a.js"></script> </head> <body> <script type="text/javascript"><!-- alert(document.body.clientWidth); --></script> </body> </html>

  • javascriptのalertで文字化けが解消されません。(外部js

    javascriptのalertで文字化けが解消されません。(外部jsファイル読込による) htmlファイル <meta http-equiv="Content-Script-Type" content="text/javascript"> <script language="JavaScript" src="**/**.js" charset="shift_jis"></script> いろいろ調べまして、charset="shift_jis"を指定したり、utf-8にしましたがうまくいきません。 jsファイル function testalert() { alert('テスト'); } ご教授をよろしくお願いします。

  • AタグでFunctionを実行

    xxx.jsというJavaScript1ファイルのyyy()というFunctionを、Aタグで実行させたくて、 <SCRIPT LANGUAGE="JavaScript" SRC="xxx.js"></SCRIPT> <A Href="JavaScript:yyy(document.all.id,document.all.name);">取込</A> と書いたんですが、オブジェクトがありません。というエラーが出てしまいます。 記述が間違っているんでしょうか?

    • ベストアンサー
    • HTML
  • window.alert グーグルクローム

    グーグルクロームを使用しています。 <html> <head> <title>test</title> </head> <body>   <script type="text/javascript">   <!--     function test() {       window.alert("テストです。");     }   // -->   </script>   <button onClick="javascript:test();">テスト</button> </body> </html> このソースでテストボタンを押すと 画像の様に 「javascriptのアラート」と出ますが 同じコードを自分の作成しているサイトに組み込むと 「javascriptのアラート」の部分が 「ページ ○○.web.fc2.com の記述:」 になります。 ○○は、私のサイトのURLです。 IEで確認すると、 サンプルコードでも自分のサイトでも 「Webページからのメッセージ」になります。 グーグルクロームで 「javascriptのアラート」となる場合と 「ページ ○○.web.fc2.com の記述:」となる場合の違いは何でしょうか?

    • ベストアンサー
    • HTML
  • JavaScript内にJavaScriptを読み込む方法

    HTML内に <script type=\"text/javascript\" src=\"main.js\"></script> という一行を追加すると、バナーが表示されるというスクリプトを作成しています。 main.jsは、 html = \'<script language=\"JavaScript\">\'; html += \'var url0101 = \"url01.xxx.jp\";\'; html += \'var url02 = \"url02.oooo.jp\";\'; html += \'</script>\'; html += \'<script language=\"JavaScript\" src=\"http://xxx.xxxx.xxx/test.js\"></script>\'); html += \'<script language=\"JavaScript\">\'; html += \'Function01(\"check\")\'; html += \'</script>\'; document.write(html); というような風になっており、 (1) 変数の宣言 ↓ (2) http://xxx.xxxx.xxx/test.jsの読み込み ↓ (3) (2)で読み込んだjs内の関数Function01を実行 という流れです。 FireFoxでは表示されましたが、IE6では (2)のjsを読み込む前に(3)のFunction01が実行され、 「オブジェクトを指定してください」のエラーが表示されてしまいます。 よい方法がありましたら教えていただけますでしょうか? よろしくお願いします。

  • JavaScript内にJavaScriptを読み込む方法

    HTML内に <script type="text/javascript" src="main.js"></script> という一行を追加すると、バナーが表示されるというスクリプトを作成しています。 main.jsは、 html = '<script language="JavaScript">'; html += 'var url0101 = "url01.xxx.jp";'; html += 'var url02 = "url02.oooo.jp";'; html += '</script>'; html += '<script language="JavaScript" src="http://xxx.xxxx.xxx/test.js"></script>'); html += '<script language="JavaScript">'; html += 'Function01("check")'; html += '</script>'; document.write(html); というような風になっており、 (1) 変数の宣言 ↓ (2) http://xxx.xxxx.xxx/test.jsの読み込み ↓ (3) (2)で読み込んだjs内の関数Function01を実行 という流れです。 FireFoxでは表示されましたが、IE6では (2)のjsを読み込む前に(3)のFunction01が実行され、 「オブジェクトを指定してください」のエラーが表示されてしまいます。 よい方法がありましたら教えていただけますでしょうか? よろしくお願いします。

  • 実行の順番を教えて下さい。

    ---------------------------------------------------------------------------------------------------------------- <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script type="text/javascript"> ( tmp_jquery=jQuery ・・・(1) )( function(){ $=jQuery=tmp_jquery; ・・・(2) } ); </script> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script> <script> $(function(){ alert(jQuery.fn.jquery); ・・・(3) }); </script> ---------------------------------------------------------------------------------------------------------------- 上記の処理では、jQuery1.7.1をロードして後、jQuery1.2.3をロードしていますが、 (1)のところで、jQuery1.7.1を保持し、 (2)で再び$とjQuery変数にロードしているため (3)のところで、"1.7.1"と表示されます。 さて、ここで(2)の部分がいつ実行されるのかが理解できません。 そもそも、今回の処理で記述されている ()() の意味がわかりません。 クロージャーなどで、 (function(){})() と記述しますが、 function(){}を式として認識させるために丸括弧で囲っているのは、 以下のサイトで知りました。 http://d.hatena.ne.jp/amachang/20080208/1202448348 今回も同様の意味なのでしょうか? だとすれば、(1)の前に(2)が実行されそうなのですが・・・。 どなたか、ご説明お願いできないでしょうか?

  • エラー行の行数の不思議

    javascript初心者ですが、IEによるjavascriptのエラー行の表示で、 <SCRIPT type="text/javascript" SRC="test.js"></SCRIPT> として外部ファイルを読み込んでいますが、エラー行が「9」と表示されます。しかし、test.jsは8行しかないのです。 どのように理解したらいいものでしょうか。

専門家に質問してみよう