0

私はレガシープロジェクトに取り組んでいます。JSPの1つでは、このようなフレームがカスケードされています

   <frameset >
     <frame src="Welcome.jsp">
        <frameset cols="9,*" >
     <frame src="Customer.jsp">
      <frame src="Account.jsp">
     </frameset>
  </frameset>

フレームセット/フレーム間の JSP コードをスキップしました。

現在、1 つの account.jsp 内に、送信ボタンのクリックで送信される html フォームがあります。UI で見られるエクスペリエンスは、account.jsp のみが新しいデータで更新されることです (welcome や customer などの他の jsp はそのまま残ります)。私の理解では、これは ajax リクエストによってのみ可能です。しかし、ドリルダウンすると、フォーム送信と同じ単純なロジックであることがわかりました。

私の質問は、なぜその特定のフレームだけが更新され、ページ全体が更新されないのかということです。フレームセット機能ですか?私はそれについてグーグルで検索しようとしましたが、特定のフォーム送信とフレームセットの関係を見つけることができませんでしたか?

4

2 に答える 2

1

iframe でフォームを送信すると、その iframe のみが更新されます。それがまさにそれがどのように機能するかです。それに関するドキュメントも見つかりませんでした。ある程度、完全に独立したタブのように動作します。たとえば、別のタブであるかのようにフレーム内を移動できます。親ページを更新する場合は、これを使用します。
parent.location.href = parent.location.href

于 2012-05-01T07:16:26.940 に答える
0

フレームはブラウザの異なるインスタンスであると考えることができますが、同じ画面に表示されます (タブ ブラウジングと同様)。必要に応じて、すべてのパーツを切り離して動作させる必要がある場合にのみフレームを使用します。 1 つのフレームから他のフレームを更新するには、javascript を使用してそのフレームを取得し、そのフレームの src プロパティを設定します。ページ全体を刷新する場合は、window.top.src = new_page

于 2012-05-01T07:21:04.527 に答える