2011-08-08 6 views
1

まずクリックonlick、あなたはこんにちは、あなたがHi出力が表示されますボックスをドロップダウンし、次のページの送信ボタンをクリックして表示されますが、実際に、それはこんにちは正しい値 - BBのリンク上

する必要がありますenable.php

<html> 
    <head> 
     <script type="text/javascript"> 
      function showdetail(boxid){ 
       document.getElementById(boxid).style.display = "block"; 
      } 

      function hidedetail(boxid){ 
       document.getElementById(boxid).style.display = "none"; 
      } 
     </script> 
    </head> 
    <body> 
     <form name="abc" method="post" action="abc.php"> 
      <ul> 
       <li><a id="r" href="#" title="" alt="" onclick="showdetail('res'); hidedetail('comm');">bb</a></li> 
       <li style="width: 1px;">|</li> 
       <li style="width:85px;"><a id="r" href="#" title="" alt="" onclick="showdetail('comm'); hidedetail('res');">Cc</a></li> 
       <li style="width: 2px;">|</li> 
      </ul>` 
      <div id="res"> 
       <select id="pr" name="pr" class="textarial12 textcolorgrey flot_left"> 
        <option value="Hello">Hello</option> 
       </select> 
      </div> 
      <div id="comm" style="display:none;"> 
       <select id="pr" name="pr" class="textarial12 textcolorgrey flot_left"> 
        <option value="Hi">Hi</option> 
       </select> 
      </div> 
      <input type="submit" value="submit" /> 
     </form> 
    </body> 
</html> 

:CCのリンクをクリックしたときには、ボタンがクリックされた提出出力はまだHI同じままので、補正後の値が、次のページ

ファイル名に印刷されていない場合はHIドロップダウンボックスが表示されますファイル名:abc.php

<?php 

$PrType=$_POST['pr']; 
echo $PrType;  

?> 
+0

あなたが尋ねていること、またはここで達成しようとしていることは、まったく不明です。 – David

+1

"こんにちは"の後に来るので、 "Hello"は同じ名前(pr)を持っているので、 "こんにちは"は上書きされます。 2つのオプションが分かれているのはなぜですか?これは宿題ですか? –

答えて

1

<select>は、同じ名前のDOMにあります。フォームが送信されると、名前を持つすべてのフォーム要素が取得され、<select>は同じ名前を持つため、2番目( 'hi')は1番目( 'hello')を上書きします。

フォームから値を送信しないようにするには、入力をdisabledにします。

注:実際には、同じidの複数の要素を持つべきではありません。 HTMLのidは一意であると考えられています。

関連する問題