2016-05-14 11 views
0

私はHTML/JSページを開発しています。コンテナ1とコンテナ2の2つのコンテナがあります。以下は、表示設定上でデータレイアウトが上がっています:なし

container1には、Order Entry Formがあります。コンテナ2には、他のテキストや画像があります。ビューでは、container1は上にあり、container2は下にあります。

私が行っていることは、コンテナ1にあります - 注文入力フォームを正常に提出すると、フォームを非表示にし、フォームのインプレースで注文確認メッセージを表示します。以下のコードは私にとってうまくいきます:

document.getElementById('form').style.display = 'none'; // hide form 
document.getElementById('confirmation_message').style.display = 'block'; //display confirmation message 

期待したとおりにフォームを隠して確認メッセージを表示しています。

問題私は直面しています - 上記のコードの実行後、コンテナ2のデータも上方に移動し、コンテナ1(確認メッセージのすぐ下)に来ます。 また、ページを拡大/縮小するときにコンテナ2のデータを自動的にコンテナ2に設定することもできます。 私が見逃した不動産を手伝ってください。

bookmywatercan.comをご確認ください。そこにダミーデモページをアップロードしました。フォームに記入して提出してください。あなたが混乱していただきありがとうございます。助けてください。私は同じ場所とコンテナ1の下のコンテンツを組織化された形で必要とします。

ありがとうございます。

答えて

0

コンテナ2を同じ場所に置いておきたい場合は、displayの値を「none」ではなく「visibility」の値を「hidden」に設定する必要があります。

2つの違いの1つは、visibility: hidden;は、ページのレイアウト内で要素の場所を維持しますが、display: none;は要素が存在しないように扱うことです。

だから、最初の行のために、代わりにこれを試してみてください。

document.getElementById('form').style.visibility = 'hidden'; // hide form 
+0

はい。あなたは正しいtalemynです。私はcontainer1に何が起こっても、同じ場所にcontainer2データが必要です。 私は可視性を試してみました。しかし、この問題は空白を残すことです。私の場合、私は確認メッセージが2〜3行のままで、フォームは20〜25行です。だから最初にロードする私は可視性を使用する場合:非表示;確認メッセージのために、それは2-3行のスペースを残し、後で私はvisibility:hiddenを使うときにフォームを提出します。フォームのために、それは20から25行の空白を残すでしょう。それは良く見えません。私は内容に応じて取る必要があります。 – MeisterAjit

+0

質問にHTMLコードを入力できますか?使用している要素の構造とタイプを確認するのに役立ちます。本当に長い場合は、フォームにすべての入力を含める必要はないでしょう。 ;) – talemyn

+0

bookmywatercan.comをチェックしてください。そこにダミーデモページをアップロードしました。フォームに記入して提出してください。あなたが混乱していただきありがとうございます。助けてください。私は同じ場所とコンテナ1の下のコンテンツを組織化された形で必要とします。 – MeisterAjit

関連する問題