【问题标题】:Show and hide for every click with jquery使用 jquery 显示和隐藏每次点击
【发布时间】:2020-08-28 08:03:27
【问题描述】:

单击跨度中的文本后,我必须显示和隐藏 div。我从循环中生成了许多,我想单击每个#mod 并显示隐藏的 div。但是,只要我单击第一个#mod,就会显示隐藏的 div。我怎样才能使所有的#mod 成为我编写的代码,但它只适用于一个而不适用于所有。我哪里错了?

    <tbody>
        <form action="#" method="post" enctype="multipart/form-data" name="actionpost">
           <?php  
                global $wpdb;
               $articles = $wpdb->get_results( "select * from {$wpdb->prefix}mic_articles");     
               ?><?php
               foreach ($articles as $article){    
                   $url = get_home_url() . "/" . strtolower( str_replace( " ", "-", normalize( $article->titre ) ) );
                   echo "
                           <tr class='alternate' valign='top'> 
            <th class='check-column' scope='row'> <input type='checkbox' name='article[]' value='$article->id'></th>
            <td class='column-columnname'><a href='$url'><strong>$article->titre</strong></a>
                <div class='row-actions'>
               
                 <span id='mod'><a href='#'>Modifier</a> </span> | <span style='color:red' class='supp'>Corbeille</span>
                   
</label>
                </div>
            </td>   
            <td class='column-columnname'></td>
        </tr>";
               }
            ?> 
  
        <?php
        ?>
    </tbody>
</table>
                       <script>   

    $('#mod').click(function() {
      $('#modification').toggle("slide");
    });
</script>

【问题讨论】:

  • 您的
    标签必须从那里移动。把它放在你的
  • 改用一个类,它们就是为此而生的
  • 如果您生成多个&lt;span id='mod'&gt;,那么您就会遇到问题,因为id's 必须是唯一的。改用类
  • 关于拥有多个相同 ID 的红色警报 - 给他们一个已安装的类名,您的 #modification 在哪里?这也应该是一个类-最后..您可以单击定位您实际单击的元素的类名中最接近的元素。或者......你知道......相应地修改你的选择器。

标签: php html jquery wordpress


【解决方案1】:

您需要处理程序来附加事件。尝试添加就绪

$( document ).ready(function() {
        $('#mod').click(function() {
            $('#modification').toggle("slide");
        });
    });

【讨论】:

  • ... 并使用类而不是非唯一 ID 将使这是一个完整的答案:)
【解决方案2】:

span标签中的ID,必须是唯一的。你可以改用一个类。

<span class="mod">...</span>

$( document ).ready(function() {
        $('.mod').click(function() {
            $('#modification').toggle("slide");
        });
    });

【讨论】:

    最近更新 更多