0
<div id="tabs">
    <div id="nav">
      <p>Show Div 1:<input type="radio" name="tab" value="pkfrom" class="div1" /></p>
      <p>Show Div 2:<input type="radio" name="tab" value="pkfrom" class="div2" /></p>
    </div>

    <div id="div1" class="tab">
     <? echo form_open('email/send');?>

      <table width="100%">
      <tr><td>

Username:</td><td><? echo form_input('username', 'your username');?></td></tr>
<tr><td> Name:</td><td> <? echo form_input('Name', '');?></td></tr>
<tr><td> Address:</td><td> <? echo form_textarea('address', '');?></td></tr>
<tr><td> Degree:</td><td> <? echo form_input('specialist', '');?></td></tr>
<tr><td> Degree:</td><td> <? echo form_input('specialist', '');?></td></tr>

<? echo form_close();?>
      </table>

    </div>

    <div id="div2" class="tab">
      <p>this is div 2</p>
    </div>
  </div>

  <script type="text/javascript" charset="utf-8">
    (function(){
      var tabs =document.getElementById('tabs');
      var nav = tabs.getElementsByTagName('input');

      /* 
      * Hide all tabs
      */
      function hideTabs(){
        var tab = tabs.getElementsByTagName('div');
        for(var i=0;i<=nav.length;i++){
          if(tab[i].className == 'tab'){
            tab[i].className = tab[i].className + ' hide';
          }
        }
      }

      /*
      * Show the clicked tab
      */
      function showTab(tab){
        document.getElementById(tab).className = 'tab'
      }

      hideTabs(); /* hide tabs on load */

      /* 
      * Add click events
      */
      for(var i=0;i<nav.length;i++){
        nav[i].onclick = function(){
          hideTabs();
          showTab(this.className);
        }
      }
    })();
  </script>
</div>

divに基づく表示・非表示のコーディングです。ただし、divに通常のテキストを入力するだけで機能します。しかし、php または html 要素を追加すると機能しません。

それを修正する方法。

ありがとう

4

1 に答える 1

0

私はそれを少し変更しましたが、それは私にとってはうまくいくようです:私は以下を変更しました-

      if(tab[i].className == 'tab'){
       document.getElementById('div' + i).style.display = 'none';
      }

  function showTab(tab){
    document.getElementById(tab).style.display = 'block';
  }
于 2013-02-25T07:51:59.123 に答える