プロが教えるわが家の防犯対策術!

お世話になります。

IEにて「オブジェクトを指定してください」とのエラーが発生します。
原因はどこにあるでしょうか?ご教示ください。
また、このような事態に陥らないための対策等をあわせて教えていただけると助かります。下記コード。

<html>
<head>
<title>test</title>
<script type="text/javascript">
function getin(){
test = document.getElementById("output").innnerHTML ;
alert test ;
}
</script>
</head>
<body>
<p id="output"></p>
<p><input type="button" value="InnerHTML" onClick="getin()"></p>
</script>
</body>
</html>

このQ&Aに関連する最新のQ&A

A 回答 (3件)

気がついたのは、


alert test ;

alert(test);
とすべきではないか、という点です。
ここを修正すれば、取り敢えずエラーは出ません。
この7行目でエラーになるので、その後のスクリプトが実行されず、onClickでオブジェクトエラーが出るのではないでしょうか?
IEのオプション・詳細設定で、スクリプトエラーごとに通知を表示するにチェックを入れておけば、エラーが分かりやすいと思います。
    • good
    • 0
この回答へのお礼

cmc32000さん
無事に起動を確認できました。
今後、alertの使用時には、alert()の形で記述するようにします。
大変助かりました。ありがとうございました。

お礼日時:2007/04/10 14:02

innerHTMLのテストを実行しているみたいなので、


以下のように修正すればよいです。
<html>
<head>
<title>test</title>
<script type="text/javascript">
function getin(){
test = document.getElementById("output").innerHTML;
//ほげって出力されます。
alert(test);
}
</script>
</head>
<body>
<!-- テストの為に"ほげ"と挿入 -->
<p id="output">ほげ</p>
<p><input type="button" value="InnerHTML" onClick="getin()"></p>
</script>
</body>
</html>
    • good
    • 0
この回答へのお礼

davosukeさん
ご回答ありがとうございます。
スペルミス・・・お恥ずかしい限りです。
おかげで無事に起動が確認できました。

お礼日時:2007/04/10 14:04

実験してみたら#1氏が指摘する箇所のほか



×test = document.getElementById("output").innnerHTML;
○test = document.getElementById("output").innerHTML;

nが一個多いというスペルミスがあった。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
スペルミスは痛かったです・・。

お礼日時:2007/04/10 14:05

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qオブジェクトを指定してくださいのエラーが出ます

<html>
<head>
<META http-equiv="Content-Script-Type" content="text/javascript">
<script langage="javascript">
<!--
function start(){
time=setTimeout("jsimage()",1000);
}

var c=0;


function jsimage(){
clearTimeout(time);
if(c<=3){
document.write('<div style="position:absolute;left:'+(c*30)+'px;top:0px">\n');
document.write('<img src="logo.gif">\n</div>');
time=setTimeout("jsimage()",1000);
c=c+1;
}
}
-->
</script>
</head>

<body>
<a href="javascript:start()">start</a>
</body>
</html>
これをIEブラウザで表示させると、一回だけlogo.gifが表示されるのですが、その後に
「エラー:オブジェクトを指定してください」とエラーが出ます。このエラー内容でで指定されているラインは1です、1行目には<html>タグしかないので、よく分からなくて困っています。
 何かいい知恵がありましたら教えてください。お願いします

<html>
<head>
<META http-equiv="Content-Script-Type" content="text/javascript">
<script langage="javascript">
<!--
function start(){
time=setTimeout("jsimage()",1000);
}

var c=0;


function jsimage(){
clearTimeout(time);
if(c<=3){
document.write('<div style="position:absolute;left:'+(c*30)+'px;top:0px">\n');
document.write('<img src="logo.gif">\n</div>');
time=setTimeout("jsimage()",1000);
c=c+1;
}
}
-->
</script>
</head>

<body>
<a href="javascr...続きを読む

Aベストアンサー

body内、以外でdocument.writeを使うと新しいdocumentを開いてそこに書き出します。
(たぶん、IEの場合だけで普通はdocument.openを先に実行する必要があります。)
なので、2回目以降は1行目がエラーとなってしまいます。

ページ内を書き換えるにはDOMのインタフェースにのっとって書き換えるか、innerHTML等を使うとよいでしょう。
たぶんdocument.writeの動作を勘違いされているので真の意図がわからないのですが、
これは1秒ごとに最大3つまでlogo.gifを書き足すという意図なのでしょうか?
それともlogo.gifの位置を移動させたいだけなのでしょうか?
真の意図が判れば具体的なコードもかけるのですが、今の状態ではちょっとパスさせてください。

QNull またはオブジェクトではありませんのエラー

HTML部で
<FORM NAME="frm1" METHOD="post" ACTION="xxx.html">
 <INPUT TYPE="hidden" NAME="txt1">
</FORM>

javascriptで
document.frm1.txt1.value = "hoge";
document.frm1.submit();

のように記述しています。
FireFoxブラウザでは期待通りの動きをするのですが、
IE6では「document.frm1.txt1はNullまたはオブジェクトではありません」
とエラーが出てしまい、画面遷移しません。

因みにページはフレームを利用しており、
フォームや画面遷移はメインフレームでしか使っていないので、
フレーム名も特につけておりませんし、
targetの記述も使用しておりません。
そこらへんに原因があるのでしょうか。
それにしてもFireFoxでは可、IEではエラー
というのも解せないです。

どなたか分かる方いらっしゃいましたら
ご教示願います。

HTML部で
<FORM NAME="frm1" METHOD="post" ACTION="xxx.html">
 <INPUT TYPE="hidden" NAME="txt1">
</FORM>

javascriptで
document.frm1.txt1.value = "hoge";
document.frm1.submit();

のように記述しています。
FireFoxブラウザでは期待通りの動きをするのですが、
IE6では「document.frm1.txt1はNullまたはオブジェクトではありません」
とエラーが出てしまい、画面遷移しません。

因みにページはフレームを利用しており、
フォームや画面遷移はメインフレームでしか使っていないので、
...続きを読む

Aベストアンサー

>document.frm1
alert(document.frm1);
これが何と出るか。
場合によってはこれも「document.forms[x];」系にしてみる

あと一応確認しておくけど
function(){}
じゃない限りはHTML上に書かれた順に実装される事になってる。
まさかformが現れる前に実行させてないよね?

Q「関数が定義されていない」とのエラーが出る

こんにちは,よろしくお願いします。
何が何だか分からなくて困っています。
IEでは問題なく動くのに,Firefoxだと関数が定義されていないとのエラーが出ます。「<関数名> is not defined 」

スクリプトは,外部ファイル化してあります。キータイプの間違いもありません。何度も確認しました。

function aaa(){
 (スクリプト)
}

<body onload="aaa()">
のようにして呼び出しています。
いったい,何が悪いのでしょうか?

また,Operaだと,「リンク先のスクリプトを読み込むことができません」とのエラーが出ます。
元になるPHPファイルでは,
<script type="text/javascript" language="javascript" src="../javascript/AAAAA.js"></script>
のようにして呼び出しています。
もちろん,ファイルネームのタイプミスはありません。

ちなみに,スクリプトの内容は,日付関連のコードを記述しています。
試行錯誤している時に,他の日付関連のコードを実行したときに,
dayoption is not defined
というエラーが出たことがあります。
関数が存在しているのに,定義されていないと出るのは,もしかすると,日付関連の関数等の使い間違いではないかとも考えています。
使っているものは,Date()とgetYear()です。これらのうちのどちらかがFirefoxやOperaだとサポートされていないのでしょうか?

どうか御指導ください。よろしくお願いします。

こんにちは,よろしくお願いします。
何が何だか分からなくて困っています。
IEでは問題なく動くのに,Firefoxだと関数が定義されていないとのエラーが出ます。「<関数名> is not defined 」

スクリプトは,外部ファイル化してあります。キータイプの間違いもありません。何度も確認しました。

function aaa(){
 (スクリプト)
}

<body onload="aaa()">
のようにして呼び出しています。
いったい,何が悪いのでしょうか?

また,Operaだと,「リンク先のスクリプトを読み込むことが...続きを読む

Aベストアンサー

たぶんなんらかの凡ミスでしょうけど・・・・
firefoxでだめなら、firefoxのアドオンのfirebugで検証するのが一番です

QonClickに複数の関数を挿入する方法

初心者なのですがアニメーションの関数anime1、anime2、anime3を作成し、onClickに下記のように設定しました。
クリックするとアニメーション2つの設定ではは動くのですが、3つ目を設定すると動かなくなります。
通常はこのような設定はしないものなのでしょうか?
教えてください。
よろしくお願いします。
<INPUT type="button" value="START" onClick="anime1(), anime2()">・・・OKです。
<INPUT type="button" value="START" onClick="anime1(), anime2(),anime3()">・・・動きません。

Aベストアンサー

セミコロンでつなぐのが常道ですが、3つ以上なら
別途function化したほうが、可読性が高くなると
思います。

QJavaScriptからVBScriptの呼び出しについて

JavaScriptからVBScriptで作った関数を呼び出すことは可能なのでしょうか?
可能なのであれば、やりかたを教えてください。

Aベストアンサー

できますよ。
別のスクリプトタグの中で定義した関数は、普通に呼び出せますので。

<script language=vbscript>
function hoge(arg)
hoge=arg*5
end function
</script>
<script language=javascript>
document.write(hoge(6));
</script>

とか。
逆もしかりです。

QInternet Explorer でスクリプトエラーを表示しないようにするには?

過去ログを見たのですが、解決しないようです。
Internet Explorer でスクリプトエラーがうっとうしいので、エラーを表示しないようにしたいのですが、どうすればどうでしょうか?

過去ログに従い、[ツール]→ [インターネット オプション]→[詳細設定] の
● [スクリプトのデバッグを使用しない] チェック ボックスはすべてオン
● [スクリプト エラーごとに通知を表示する] チェック ボックスはオフ
にしてあります。

他に、なにかすべきことはあるでしょうか?

Aベストアンサー

 「sfc /scannow」はWINDOWSのファイルに損傷がないかチェックし、損傷があればそれを修復させるコマンドです。したがって、IEも修復してくれます。

 うまくいかないのは、sfcと/scannowの間に半角スペースを入れていないのではないかと思いますが、いかがでしょう。「sfc /scannow」の「」の中をコピペして、ファイル名を指定して実行に貼り付けてOKでもいいですよ。

QJavaScriptde途中で、「exit」するには?

function kensaku(){
s_data = document.kaiin_form.input_name.value;

if(!s_data){ alert("キーワードを入れて下さい!"); }

if(s_data != dumy){ ...... }
for(i=st_no;i<=n;i++){
......省略.................;
.......省略................}
}

----------------------------------
3行目で表示されたアラートをOKで閉じても、4行目以下が実行されてしまいます。
3行目でexitするにはどうすれば良いでしょうか?

Aベストアンサー

>関数(kensaku())からは抜けられませんでした。
そうですね、勘違いしていました、f(^^;
すみません。
if(!s_data){
alert("キーワードを入れて下さい!");
return;
}
ですね。

Q3つの表の外部結合

表A、B、Cの3つがあり、Aのすべての行を出力したいと考えています。
外部結合を用いるのだとは思うのですが、3つの表に対して行う場合の
書き方がわからず困っています。
ご教授いただけないでしょうか?
select * from a,b,c
where a.商品ID =b.商品ID (+) and b.商品ID (+) =c.商品ID (+)
としてみましたが、うまくいきませんでした。

Aベストアンサー

ansi構文の趣旨からいえば、結合条件と絞り込み条件は分けて書くので・・

select *
from a
left join b on (a.商品ID =b.商品ID)
left join c on (b.商品ID =c.商品ID)
where a.年月 = 任意の値

と書くのが一般的でしょうね。

Q単一グループのグループ関数ではありません。

オラクル10を使っています。

select NAMAE max(TEN) from KYOUKA WHERE OK=1 and CLASS IS ('A', 'B', 'C');

で単一グループのグループ関数ではありません。
というエラーになります。

CLASS | OK | NAMAE | TEN |
--------------------------
A 1 a01 50
A 1 a02 60
B 1 b01 10
C 1 c01 70
C 0 c02 100

a02 60
b01 10
c01 70
という結果になってほしいです。

Aベストアンサー

SQLの根本的な文法が理解できていないのかと

GROUP BY 句について調べてみましょう

QLNK2019: 未解決の外部シンボルのエラーが出る

Microsoft Visual Studio 2008
Version 9.0.21022.8 RTM
Microsoft .NET Framework
Version 3.5 SP1
----------------------------------------------------------------
新しいプリジェクト→Win32 コンソール アプリケーション(ソリューションのディレクトリを作成 チェック外す)→Windows アプリケーション(空のプロジェクト チェック外す)
----------------------------------------------------------------
 プログラム

 mymain.cpp
#include "myhelper.h"
#include "mymain.h"

//自キャラのデータ
Point2D g_jikipos = {40, 400};//自キャラの座標

//画像ハンドル
int g_jikiimage[11];

//色々なファイルの読み込み
int LoadFiles(){
//画像ファイル読み込み
if(LoadDivGraph("media\\player01.bmp",
11,11,1,64,64,g_jikiimage) == -1) return -1;

return 1;
}


 mymain.h
//他から呼び出させるMyMainの関数
void MyMain();
int LoadFiles();


 myhelper.h(サンプルなので打ちミスはない)
#include "DxLib.h"
#include <limits.h>
#include <math.h>

//構造体宣言
//座標またはベクトルを記録する構造体
struct Vector{
float x,y;
};
typedef Vector Point2D;
//線を記録する構造体
struct Line2D{
Point2D startpos, endpos;
float katamuki;//傾きをラジアン値で記録
Vector speed;//移動している場合は速度をセット
};
//球体を記録する構造体
struct Ball2D{
Point2D position;
float hankei;//半径
};
//四角形を記録する構造体
struct Rect2D{
Point2D lefttop;
Point2D rightbottom;
float width;
float height;
};


//ライブラリ関数
Point2D PosInView(Point2D in);
int XInView(float inx);
int YInView(float iny);
void ScrollToLeft(float jikiposx);
void ScrollToRight(float jikiposx);
void ScrollToUp(float jikiposy);
void ScrollToDown(float jikiposy);
void DrawLineInView(float x1, float y1, float x2, float y2, int Color, int Thickness);
void DrawCircleInView(float x, float y, float r, int Color, int FillFlag);
void DrawAnimation(float x, float y, double ExtRate, double Angle,int TurnFlag,
int *imgarray, int allframe, float fps);
//ベクトル関数
Vector CreateVector(Vector in, float veclen);
Vector AddVector(Vector v1, Vector v2);
Vector SubVector(Vector v1, Vector v2);
Vector AddVectorInFrameTime(Vector pos, Vector speed);
Vector AddVectorInFrameTime2(Vector pos, Vector speed, Vector accel);
Vector Normalize(Vector in);
Vector RotateVector(Vector in, float radian);
float VectorLengthSquare(Vector in);
float DotProduct(Vector v1, Vector v2);
float CrossProduct(Vector v1, Vector v2);
void SetLine2DKatamuki(Line2D *in);
void DrawLine2D(Line2D in, int Color, int Thickness);
void DrawBall2D(Ball2D in, int Color, int Fill);
//当たり判定関数
bool HitTestLineAndBall(Line2D linein, Ball2D ballin);
bool IsPointAtLineFace(Line2D linein, Point2D ptin);
bool HitTestLineAndLine(Line2D line1, Line2D line2);
bool HitTestBallAndBall(Ball2D a, Ball2D b);
bool HitTestPointAndBox(Rect2D rect, Point2D pt);
//タイマー関数
void SetSimpleTimer(int idx, int time);
int GetPassedTime(int idx);


//グローバル変数
extern float g_frametime;
extern Rect2D g_framerect;//画面領域(当たり判定)
extern Point2D g_current_field_pos;//現在の左上座標
extern Rect2D g_stagesize;//ステージサイズ

//定数宣言
const float ZEROVALUE = 1e-10f;
const float PIE = 3.1415926f;
const int SCROLL_LIMIT = 200;
----------------------------------------------------------------
 エラー内容
1>myhelper.obj : error LNK2019: 未解決の外部シンボル "void __cdecl MyMain(void)" (?MyMain@@YAXXZ) が関数 _WinMain@16 で参照されました
1>C:\Documents and Settings\Owner\My Documents\Visual Studio 2008\Projects\my\Debug\my.exe : fatal error LNK1120: 外部参照 1 が未解決です
1>my - エラー 2、警告 0
ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ
----------------------------------------------------------------
画像を貼り付けときます
(見えにくい場合→http://www.dotup.org/uploda/www.dotup.org154142.jpg.html)
初心者なのでわかりやすくお願いします

Microsoft Visual Studio 2008
Version 9.0.21022.8 RTM
Microsoft .NET Framework
Version 3.5 SP1
----------------------------------------------------------------
新しいプリジェクト→Win32 コンソール アプリケーション(ソリューションのディレクトリを作成 チェック外す)→Windows アプリケーション(空のプロジェクト チェック外す)
----------------------------------------------------------------
 プログラム

 mymain.cpp
#include "myhelper.h"
#include "mymain.h"

//自...続きを読む

Aベストアンサー

ファイル構成から推測するに
mymain.cpp というファイルに
void MyMain(void) {
// ここに処理を書く
}
という関数が必要なようです。


人気Q&Aランキング