1

コメントを2レベル再生するコメントシステムを開発していますが、divの表示と非表示の方法に問題があります。IDが異なるため、次の方法で試しました。

<button>replayl</button>

<span style="display:none;">
   <form action='' method='post' name="addcmt" onsubmit="return validate()">
        <textarea rows="1" cols="60" name='textarea1' id='textarea1' onKeyDown="limitText(this.form.textarea1,this.form.countdown,300);" 
                                  onKeyUp="limitText(this.form.textarea1,this.form.countdown,300);">
       </textarea>
       <br>
       <br>
       <input type="hidden" name="level1" id="level1" value="commtlevel1" />
       <input id='addcmt' type='submit' value='Add reply' name='submit'/> 
   </form>
</span>

およびjquery:

 <script>
     $("button").click(function () {
        $("span").show();                 
     });
</script>

しかし、このように返信ボタンをクリックすると、すべてのスパンタグの内容が表示されます。1つのタグのみを表示する方法や、作業を完了する方法を知りたいです。

4

2 に答える 2

2

HTMLにはボタンがないので、それは部分的に推測です。ただし、次のコードは、ボタンの直後のスパンの表示を切り替えます。

 $(document.body).on("click", "button", function () {
      $(this).next("span").toggle();
 });

セレクターをより選択的にするために、いくつかのクラスを定義する方がよいことに注意してください。

 $(document.body).on("click", "button.toggler", function () {
      $(this).next("span").toggle();
 });
于 2013-02-13T09:10:53.043 に答える
1

質問を編集した後、 div代わりに使用することをお勧めしますspan(インライン表示とブロック表示のため)。

$("button").click(function () {
    $(".myform").toggle('slow');
});

あなたが望むように仕事をするでしょう。これが結果です。

于 2013-02-13T09:29:52.793 に答える