2016-03-19 4 views
0

リンクをクリックして非表示にする必要がある要素そのリンクをクリックした後に表示される問題は、私がreturn falseまたはpreventDefaultを使用すると、リンクのdivがすぐに隠れて再び表示されるという問題ですが、実際には追加する必要があるURLにhref値を追加できなくなります。ここでリンクをクリックして要素を隠した後に要素が表示されます(return falseまたはpreventDefaultを含まないソリューションが必要です)

が、それはすべてのヘルプははるかに高く評価されるだろう、そうでなければ行うことができます場合は、コード

<body> 
<div id="categContainer1"> 
<div class="titimmo"><a href="ajoutertest.php?c=realestate"  id="a_categ">Real Estate</a></div> 
</div> 

<div id="formContainer" class="hidden"> 
      <form action="ajouter.php" method="post"> 

       <h4>Category:</h4> 

       <h4>Made :</h4> 
       <input type="text" name="made" /> 
       <h4>Model :</h4> 
       <input type="text" name="modele" /><br /><br /> 

       </form> 
    </div> 
</body> 


<script type="text/javascript"> 
    function stepone(){ 
    document.getElementById('a_categ').onclick = function() { 
    document.getElementById('categContainer1').className += " hidden"; 

    document.getElementById('formContainer').className = "visible"; 

    }; 
    } 
    stepone(); 
</script> 

<style type="text/css"> 
    .titimmo { 
     text-align:center; 
     padding:10px; 
     font-size:14pt; 
     background-color:#CC3300; 
     display:block; 
    } 
    .hidden { 
     display:none; 
    } 
    .visible { 
     display:block; 
    } 
    #formContainer { 
     padding: 1em 0 1em 2em; background-color:#E8E8E8; margin: 1em 0 1em 2em; width:88.9%; 
    } 
    #formContainer h4{ 
     color:#FF3300; 
    } 
</style> 

はここFiddle

だで、私はちょうどURLに追加されるhref値を必要としています。

+0

「#realestate」のようなURLに興味があり、「onhashchange」イベントを使用してユーザーがいつ戻るかを検出できます。これにより、ページをリロードせずに状態を保存することができます。 –

+0

あなたは本当にリンクのクリックでdivを隠すだけですか?あなたがhrefとしてphpファイルへのリンクを与えたからです。それについて明確にする。 –

+0

私はphpファイル、html、javascriptを含むPHPファイルで作業しています。私はちょうど例を示すためにそれらのdivを選びました。ファイルタイプなどを変更する必要がありますか?同じページでstepwizardフォームを作成しようとしており、リンクに応じてhref値を変更する必要があります。 – Samwise

答えて

0

Javascriptの履歴操作機能を使用する必要があります。

function stepone(){ 
      document.getElementById('a_categ').onclick = function() { 
      document.getElementById('categContainer1').className += " hidden"; 

      document.getElementById('formContainer').className = "visible"; 
      window.history.pushState('Form', 'My form', this.getAttribute("href")); 
      return false 

     }; 
    } 

    stepone(); 
+1

非常に多くの#Claudio Kingありがとうございました。あなたのソリューションは問題を解決しました。私はちょうどリロードのためにそれを最初の状態に戻って、またブラウザに戻って同じ矢印を押して、同じ#C1audioキングをありがとうございました。 – Samwise

関連する問題