今、ウェブ仕様のソフトウェアを作っているのですが、ほぼ完成したのでブラウザごとに動くか試験をすることにしました。
とりあえず、Firefox、Netscape、Lunascape、Operaをダウンロード、ソフトウェアを実行してみました。
結果は、Lunascape以外は途中で実行されないというものでした。
具体的に言いますと、このソフトウェアでは
0.フレームAでカテゴリを選択、フレームBに表示
1.フレームBにて、自分に当てはまる項目をチェックボックスでチェック
2.それぞれに割り当てられている数値の合計をフレームAに送信
3.作業がすべて終了後、フレームBに『結果』を表示
4.フレームAにある数値をフレームBへ送信
5.『結果』のプログラムにより、数値を加工・表示
というもので、今回問題になっているのは4、5です。
開発言語はHTMLとJavaScript、開発で使用したブラウザはIEです。
プログラムの問題というより、ブラウザの設定に問題があると思います
(少なくとも2はうまく行っているので)。
どうかよろしくお願いします。
No.5
- 回答日時:
良く解りませんが、
<body onLoad="check(this.form)">
ここのthis.formっておかしくないですか?
document.body.form?
普通はdocument.formじゃないでしょうか。
IEってこれで良いのでしょうかね。
alert(tf)でundefinedを確認できませんかね。
No.4
- 回答日時:
訂正:
○また、具体的な例を挙げるならばMimeタイプ取得のオブジェクトではIEだけ非対応といったケースも時折見られます。
×また、Mimeタイプ取得のオブジェクトではIEだけ非対応といったケースも時折見られます。
この回答への補足
少々遅くなってしまいましたが、以下が問題のプログラム(一部)です。
フレームA:main.html(固定)
<body><form name="form" method="post" target="フレームA" action="result.html">
<a href="select1.html" target="フレームB">春</a><input type="text" name="spring">
<a href="select2.html" target="フレームB">秋</a><input type="text" name="fall">
<input type="submit" value="計算">
</form></body>
フレームB:select1.html(0~2、select2.htmlも同様)
<head><script type= "text/javascript" language="JavaScript" src = "select.js"></script></head>
<body><form name="form" method="post" target="フレームA" action="main.html">
<input type="checkbox" name="a1">1月
<!--- ↑のようなものが数行つづくので省略 --->
<input type="submit" value="送信" onClick="count(this.form)">
</form></body>
フレームB:select.js(select1.htmlのスクリプト)
function count(tf) {
var total1 = 0;
if( tf.a1.checked == 1 )
total += 1;
<!--- 以下省略 --->
parent.フレームA.document.form.spring == total;
}
フレームB:result.html(結果画面)
<head><script type= "text/javascript" language="JavaScript" src = "result.js"></script></head>
<body onLoad="check(this.form)"><form name="form">
春:<input type="text" name="spring">
秋:<input type="text" name="fall">
春-秋:<input type="text" name="minus">
</form></body>
フレームB:result.js(結果画面のスクリプト)
function check(tf) {
spring = parent.フレームA.document.form.spring.value;
fall = parent.フレームB.document.form.fall.value;
minus = spring - fall;
tf.spring.value = spring;
tf.fall.value = fall;
tf.minus.value = minus;
}
・・・という感じです(実際のものとは違いますが)。
申し訳ありませんが、よろしくお願いします。
No.3
- 回答日時:
IEだけ不具合を起こすと言うケースもあります。
例えば、外部スクリプト読み込みでページのエンコードとスクリプトファイルのエンコードが違うとIEではエラーが起きますが、他の環境ではエラーになりません。
また、Mimeタイプ取得のオブジェクトではIEだけ非対応といったケースも時折見られます。
…何が言いたいかと言うと、まぁ要はソースを見なければ分からない、と。
No.2
- 回答日時:
いまいち送信というのがわかってないのですが、
この送信は、BのフレームからPOSTして、Aのフレーム内容を書き直す
という意味でしょうか?それともAのフレームのinputタグなりのフィールドに、値をセットするという意味でしょうか?
とりあえず、No1の方もおっしゃってるとおり、javascriptとHTMLの該当箇所のソースを見せてください。
No.1
- 回答日時:
HTMLとjavascript使用、で、各ブラウザでjavascriptの使用が許可されている、そして同じPCで確認したのなら、ブラウザ側の問題というより、ソースの記述自体の問題の可能性の方が高いです。
Lunascapeで動いたのは、IEのエンジンをそのまま使用する形だからでしょう。(LunascapeはレンダリングエンジンはIEそのものなので、これでバグチェックをするのはあまり意味が無いと思います。。。
FirefoxやOperaには、javascriptの記述エラーを表示するエラーコンソールがありますが、そちらにはエラーは何も表示されていませんか?
ソース(特にjavascript)を示して頂ければ、解決の糸口がつかめそうですが。
この回答への補足
※お礼を書いた後の内容になります。
思い直し確認してみたところ、(質問内にあるソフトウェアの説明の)2のJavaScriptでも『this.form』→『tf』を使っていました。
どうしてこの様なことがおきてしまったんでしょう?
早速のご解答、ありがとうございます。
そうなんですか?てっきりセキュリティなどの面かと思いました。
エラーコンソールも知りませんでした。IEのように『スクリプトエラーごとに通知』があるのかと探しては見たんですが・・・。
今試したところ、HTML内でJavaScriptのfunctionに『this.form』を送信、functionないでは『tf』としたことに文句を言っているようなんですが・・・。
この様な変換は無効になってしまうんでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# 【C++】IDirect3DSurfaceのディープコピーは可能ですか? 1 2022/07/06 02:47
- 画像編集・動画編集・音楽編集 動画をディスク作成すると画像が乱れる。 4 2022/06/24 07:49
- ノートパソコン Windows 10 動作改善方法 6 2023/04/26 22:30
- C言語・C++・C# C言語 3 2022/10/04 15:07
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- その他(データベース) Accessフォームにて指定のフィールドの平均値を小数点第一位で表示できない 2 2022/08/30 17:19
- 家具・インテリア ダブルのベッドにクイーンのマットレス 5 2023/02/11 08:35
- サングラス・カラコン メガネ 3 2023/01/15 04:53
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- Excel(エクセル) マクロだと数式が表示される 2 2022/09/10 14:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
submitボタンで他のフレームを...
-
スマホ上で、左右スワイプで次...
-
javascriptでurlタイトル変化。
-
フレームを使用した複数プルダ...
-
インラインフレームで表示され...
-
<a href="#" …>の意味を教えて...
-
ポップアップウィンドウの位置
-
JavaScriptでiframeの内容を「...
-
(Javascript)印刷するファイル...
-
確認ダイアログで「キャンセル...
-
ブラウザをJavaScriptで最小化…
-
ウィンドウ名の設定
-
SCRIPT5007: 未定義または NULL...
-
bodyタグって2重にしようするこ...
-
getElementsByNameで要素が取得...
-
画像ファイルのアドレスに今日...
-
function の return 値を表示し...
-
キーを押している間の時間を計...
-
window.openの件について
-
ユーザーが更新ボタンを押さな...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スマホ上で、左右スワイプで次...
-
openerは使えないのでしょうか?
-
フレームでの右クリック禁止
-
親ウィンドウの別フレームを子...
-
ブラウザのURLアドレス文字表記...
-
フレームのことで
-
submitボタンで他のフレームを...
-
フレームを跨ぐドロップダウン...
-
別ページのインラインフレーム...
-
Safariで<iframe>のinnerHTMLを...
-
インラインフレームで表示され...
-
textarea入力された文字をjump...
-
子フレームの自動リロードは可...
-
右フレームのテキストに、値を...
-
フレーム分割領域のサイズを変...
-
ブラウザごとに違うとは思いま...
-
2つ親のフレームにアクセスしたい
-
showModalDialog()による新規ウ...
-
フレームを分けたときに共通で...
-
名前が定義されていないiFrame...
おすすめ情報
