как получить идентификатор конкретной кнопки и переключить его в функции JavaScript

0

У меня есть функция в JavaScript, которая запускает некоторый код, когда кнопка активации нажата на эту функцию для переключения (изменения), но я хочу, чтобы этот код был более конкретным. Я хочу отправить идентификатор этой функции и переключить только этот объект

например, я делаю это: но я не могу получить идентификатор этой ссылки в функции

также вы можете увидеть мой код ниже:

это моя функция javascript:

<script type="text/javascript">

    $('document').ready(function(){
        $('a.activation').click(function(){
            var de_id = $(this).attr('de_id');
            var parent = $(this).parent();
            $.post('insert.php', {de_id:de_id});
            $('a.activation').toggle();
        });

        $('a.activation').click(function(){
            $('a.activation').toggle();
            var act_id = $(this).attr('act_id');
            var parent = $(this).parent();
            $.post('insert.php', {act_id:act_id});
            $('a.activation').toggle();
        });
    });

</script>

и это тело:

<td><?php if($news['ns_act']==1){
                        echo "<a class='activation' onClick=\"reply_click(this.{$news['ns_id']})\" href=\"javascript:return(0);\" de_id=\"{$news['ns_id']}\" style=\"display: inline-block;\" ><img src=\"images\icons\activate.png\" height=\"16px\" width=\"16px\"  /></a>
                              <a class='activation' onClick=\"reply_click(this.{$news['ns_id']})\" href=\"javascript:return(1);\" act_id=\"{$news['ns_id']}\" style=\"display:none;\" ><img src=\"images\icons\deactivate.png\" height=\"16px\" width=\"16px\" /></a>";
                }
                else {
                    echo "<a class='activation' onClick=\"reply_click(this.{$news['ns_id']})\" href=\"javascript:return(1);\" act_id=\"{$news['ns_id']}\" style=\"display: inline-block;\" ><img src=\"images\icons\deactivate.png\" height=\"16px\" width=\"16px\"  /></a>
                          <a class='activation' onClick=\"reply_click(this.{$news['ns_id']})\" href=\"javascript:return(0);\" de_id=\"{$news['ns_id']}\" style=\"display:none;\"><img src=\"images\icons\activate.png\" height=\"16px\" width=\"16px\" /></a>";
                }

                 ?></td>
Теги:
togglebutton

2 ответа

0

JS

    $('document').ready(function(){
        $('a.activation').click(function(e){
            var de_id = $(this).attr('de_id');
            var parent = $(this).parent();
            $.post('insert.php', {de_id:de_id});
            $("#"+e.target.id).toggle();
        });

        $('a.activation').click(function(e){
            $('a.activation').toggle();
            var act_id = $(this).attr('act_id');
            var parent = $(this).parent();
            $.post('insert.php', {act_id:act_id});
            $("#"+e.target.id).toggle();
        });
    });

</script>

HTML

echo "<a id='someid' class='activation' onClick=\"reply_click(this.{$news['ns_id']})\" href=\"javascript:return(0);\" de_id=\"{$news['ns_id']}\" style=\"display: inline-block;\" ><img src=\"images\icons\activate.png\" height=\"16px\" width=\"16px\"  /></a>
<a id='someotherid' class='activation' onClick=\"reply_click(this.{$news['ns_id']})\" href=\"javascript:return(1);\" act_id=\"{$news['ns_id']}\" style=\"display:none;\" ><img src=\"images\icons\deactivate.png\" height=\"16px\" width=\"16px\" /></a>";
  • 0
    Можете ли вы дать мне подсказку? e.target.id ?? что я должен делать в своем коде?
  • 0
    это не сработало!
Показать ещё 2 комментария
0
<script type="text/javascript">

        $('document').ready(function(){
            switch=0;
            $('a.activation').click(function(){
               if(switch==0){
                   var de_id = $(this).attr('de_id');
                   var parent = $(this).parent();
                   $.post('insert.php', {de_id:de_id});
                   switch=1;
                   $(this).css("background","green").html('Activate');
                   }
              else{
                     var act_id = $(this).attr('act_id');
                     var parent = $(this).parent();
                     $.post('insert.php', {act_id:act_id});
                     switch=0;
                     $(this).css("background","red").html('Deactivate');
                  } 
            });

    });// ready end

</script>

HTML

<a class='activation' onClick=\"reply_click(this.{$news['ns_id']})\" href=\"javascript:return(0);\"act_id=\"{$news['ns_id']}\" de_id=\"{$news['ns_id']}\" style=\"display: inline-block;\" ><img src=\"images\icons\activate.png\" height=\"16px\" width=\"16px\"  /></a>
  • 0
    $(this).css("background","red").html('Deactivate'); вместо этого вы можете изменить источник image
  • 0
    спасибо, что вы правильно указали мою структуру, но реальная проблема связана с идентификатором нажатой кнопки!
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню