![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
2つのインラインフレームがあって、片方はidがgform のGoogleフォーム、もう片方はidがhoge のframe.htmlというファイルが埋め込んであります(実際はローカルファイルにはしない予定)。
このとき、Googleフォームを送信したらframe.htmlがスーパーリロードされるよう、gformのonload属性にdocument.getElementById("hoge").contentWindow.location.reload(true);を指定したのですが実行されませんでした(alertなどは実行されました)。
どうやったら上のようにできますか?このでしゃばりな初心者にどうかお教えください。
————-
gformのonload属性
onload="alert('Hello');document.getElementById('hoge').contentWindow.location.reload(true);alert('Aloha');"
このとき、Helloというポップアップは出るが、Alohaというポップアップは出ない。
(知恵袋にも同じ質問をしています。マルチポストですがどうかお許しください)
![「ifreamをリロードしたい」の質問画像](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/c/543058979_6270d6333b226/M.jpg)
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは
同一オリジンと仮定しても良いのでしょうか?
一応、その前提で・・・
ご質問の説明の文章だと、gformの文書の中にid=hogeの文書があるわけではないように読めます。
>document.getElementById('hoge')
は自文書内の要素を取得しようとするので、取得できていないのではないですか?
(文書の関係がはっきりしないので、よくわかりませんけれど・・)
一旦、親文書に戻ってそちらで取得すれば要素の取得は可能です。
window.parent.document.getElementById('hoge')
のような感じで。
※ ただし、同一オリジンでない場合は拒否されます。
ついでながら・・
>スーパーリロードされるよう~
>location.reload(true);を指定~
勘違いをなさっているようですが、引数を指定してもfx以外では「スーパーリロード」の意味にはなりません。
https://developer.mozilla.org/ja/docs/Web/API/Lo …
代替法としては、タイムスタンプ等を付してsrcを再設定するなどが考えられます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript Javascript初心者|jQueryの.val()で値を取得し複数の要素を連結させる方法知りたい 2 2022/06/02 12:06
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- Windows 10 バッチファイルの記述法とルールについてアドバイスをお願いいたします。 1 2022/04/13 10:50
- JavaScript javascriptで入力フォームが空欄の時にアラートによるエラーを出すコードを書いています。 2 2023/06/13 17:58
- Google Drive Google form を利用して 問い合わせフォームを作りたい 1 2022/04/25 14:15
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- JavaScript JavaScriptで「〇以上▲まで」の書き方 1 2022/07/20 14:44
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Boolean型配列中のTrueの有無を...
-
ASP+アクセスでのSQLコメントに...
-
Excel VBA の ChangeFileAccess
-
ボタンをクリックすると数が増...
-
バイナリファイルから文字列を...
-
【正規表現】【javascript】CR...
-
「オブジェクトが必要です。」...
-
ArrayListの初期値の設定の仕方...
-
responseTextを使っての書き換...
-
javascriptで文字挿入でtoggle...
-
正規表現で半角数字1桁のみを全...
-
【Jquery】changeイベント毎にa...
-
BIND 9での内部のみのDNSで、ホ...
-
MFCのキャプション変更
-
C++の変数の初期化
-
PDFファイルをWEB上で見れるよ...
-
Linux バイナリ実行できない "...
-
C# .NET DataGridView の行を追...
-
VC++のちらつき防止方法
-
構造体を引数で関数へ渡す
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Boolean型配列中のTrueの有無を...
-
Linux バイナリ実行できない "...
-
ASP+アクセスでのSQLコメントに...
-
ボタンをクリックすると数が増...
-
【正規表現】【javascript】CR...
-
【Jquery】changeイベント毎にa...
-
「オブジェクトが必要です。」...
-
Excel VBA の ChangeFileAccess
-
Vb.netのグローバル変数の宣言...
-
MFCのキャプション変更
-
onclick指定関数の引数へローカ...
-
同じ型【ハイフンと数字】だけ...
-
static constメンバ変数(配列)...
-
javascriptで文字挿入でtoggle...
-
サブウインドウから親ウインド...
-
URLの一部をコピーできるブック...
-
window.onloadでのfunction
-
Javascriptグローバル変数の値...
-
複数ファイルで使うグローバル...
-
全部のアクセスを指定したペー...
おすすめ情報
迅速な回答ありがとうございます!
同一オリジンではないのです…
スーパーリロードの件、勘違いしてました。
勉強になります。
一応、下記にソースを載せときます。
<table><tr><td style="width:50%"><iframe width="100%" height="800px" frameborder="0" src="frame.html" id="hoge"></iframe></td> <td style="width:50%"><iframe id="resubmit" width="100%" height="800px" frameborder="0" src="https://docs.google.com /forms/d/e/EXAMPLE/viewform?embedded=true" id="gform" onload="document.getElementById('hoge').contentWindow.location.reload(true);"></iframe></td></table>