0

iframe があり、その iframe 内に javascript 関数があります。iframe を開くときに iframe 内にいくつかの値を設定する必要があるため、iframe の親からその関数を呼び出せるようにしたいと考えています。これまでのところ、私は試しました:

 ClientScript.RegisterClientScriptBlock(this.GetType(), "saveTasks", "<script type='text/javascript'> function SaveTasks() { frames['myIframe'].location.href = 'myURL'; frames['myIframe'].test(); } </script>");

ただし、myURL ファイルにある test() 関数を呼び出すことができません。

親から子内のjavascript関数を呼び出すために、これを行うための特定の構文は何ですか? ありがとうございました

4

2 に答える 2

1

私はこれにあまり詳しくありません。ただし、javascript のこのセグメントには、「frames['myIframe']」が何であるかを知る方法があるようには見えません。$document がロードされているかどうかなど、問題が発生する可能性があることがたくさんあります。

于 2012-10-18T16:29:27.633 に答える
0

これに対する解決策が見つかりました: JavaScript 関数が見つかった子ページは、関数を呼び出したときに読み込まれなかったようです。幸いなことに、ここでこれに対する解決策を見つけました。

ClientScript.RegisterClientScriptBlock(this.GetType(), "saveTasks", "<script type='text/javascript'> function SaveTasks() { frames['ValidateTasksIframe'].location.href = 'myURL'; $('#ValidateTasksIframe').load(function() { frames['ValidateTasksIframe'].test();});} </script>"); 

event.load() の使用は魅力的です! :)

于 2012-10-19T13:10:19.253 に答える