prototype.js toggle() が動かないで困った件

公開日:  最終更新日:2013/11/25

Element.toggle(element);

などという便利なモノがprototype.jsにはあります。
<dvi id=”aaa”>ほにゃ</div>
なんて部分を表示したり隠したりするのに、とっても重宝します。

具体的には

function test(){
     $("aaa").toggle();
}

なんて書くと、表示と隠蔽が交互にくりかえされます。
でも、動かないんだよ~(泣) なぜだ!

という事例が起こりました。

原因は、わかってしまえば簡単で、

<table>
  <div id="aaa">
   <tr><td>
     へにょ
   </td></tr>
  </div>
</table>

なんて構文にしていたのですが、テーブルの一部に使うのがまずかったようです。

<table>
  <tr><td>
   <div id="aaa">
     へにょ
   </div>
  </td></tr>
 </table>

こうしたら、ちゃんと動いた。

めでたし、めでたし。

PAGE TOP ↑