Javaバックエンドが連結して同じレンダリングされたHTMLページに送り返す2つの異なるJSPがあります。
各JSPには独自の<script>ブロックがあり、そのブロック内に関数を定義します。
JSP#1:
<script type="text/javascript">
function blah() { ... }
</script>
JSP#2
<script type="text/javascript">
function foo()
{
blah();
}
</script>
私が言ったように、バックエンドはこれらをHTTP応答に追加し、同じリクエスト中にブラウザーに送り返します。
このページをブラウザで実行すると、が呼び出されblah()たときに実行されていないことがすぐにわかります。foo()Firebugにコンソールエラーが表示され、blah()定義されていません。blah()独自のタグ内にスコープしかないのではないかと思います。<script>同様にfoo()。それはここに当てはまりますか、それとも何か他の問題がありますか?
ページソースを表示すると、両方のスクリプトブロックと両方の関数が表示されます。これは、すべてがサーバー側で正しく生成/レンダリングされていることを示していますが、おそらく私のアプローチは本質的に間違っています(異なるスクリプトタグ内の関数を定義する)。前もって感謝します。