как получить идентификатор тд в JavaScript - PullRequest
0 голосов
/ 11 февраля 2020
<table class="table" style="margin-bottom:0px!important"> 
    <b>
    <? if(!empty($channelBase['rep_ids']))
    {
        $s_id=$channelBase['id'];
        $i=0;   
        $temp='';

        $reps_channl=explode(",",$channelBase['rep_ids']);
        foreach($reps_channl as $k)
        {
            $added_reps = $rep_names[$k];
            if($i==0){
            $temp.='<tr style="border-top:none;">';     
            }
            $temp.="<td id='".$s_id."_".$k."' class='repclicked' style='border-top:none;'>$added_reps <a href='#' class='btn btn-xs btn-icon btn-circle ' onclick='delete_repid($k,$s_id);'><i class='fa fa-close'></i></a>
            </td>";
            $i++;
            if($i==5)
            {
            $temp.='</tr>';
            $i=0;
            }
        }
        echo $temp;
    }
    ?>
    </b>
</table>

Здесь у меня есть td идентификатор с числовым значением. здесь я путаюсь с тем, как получить td идентификатор в javascript. Может кто-нибудь, пожалуйста, помогите мне.

Ответы [ 3 ]

1 голос
/ 11 февраля 2020

Вот как вы можете получить Ids из td внутри таблицы

for (let row of mytab1.rows) 
{
    for(let cell of row.cells) 
    {
       console.log(cell.id)
    }
}
<div id="myTabDiv">
<table name="mytab" id="mytab1">
  <tr> 
    <td id="id_1">col1 Val1</td>
    <td id="id_2">col2 Val2</td>
  </tr>
  <tr>
    <td id="id_3">col1 Val3</td>
    <td id="id_4">col2 Val4</td>
  </tr>
</table>
</div>
0 голосов
/ 12 февраля 2020

Вы пытаетесь смешать PHP и javascript, что вы не можете сделать. Все в PHP отделено от javascript, и эти два не имеют доступа к идентификаторам друг от друга.

Причина заключается в следующем:

PHP код полностью запускается ДО страница загружена. Когда страница полностью загружена в PHP, она отправляется в браузер, где javascript воздействует на результат кода PHP.

Попробуйте:

на странице введите:

<code> <pre>
 <?php
  $a = "1"; 
  $b = "2";  
 print_r($a); 
 print_r($b); 
 ?>
 

Теперь загрузите страницу и щелкните правой кнопкой мыши на странице и go для «проверки» или «просмотра источника»

вы увидите, что источник страницы не имеет php кода и имеет только

<code> <pre>12

Это потому, что весь код PHP обрабатывается ДО загрузки страницы, тогда как javascript обрабатывается ПОСЛЕ того, как страница отправляется в браузер.

Сначала вы должны сделать все, что связано с PHP идентификаторами и полностью отделены от javascript, а также javascript должны быть полностью отделены от PHP.

Для вашего случая вы должны сделать отдельный запрос, чтобы изменить массив в PHP, а затем либо перезагрузить страницу, либо использовать AJAX для загрузки обновленных данных.

Тип действия, которое вы пытаетесь совершить sh, невозможен, как вы пытаетесь это сделать.

0 голосов
/ 11 февраля 2020

Попробуйте,

"<td id='".$s_id."_".$k."' onclick='alert(this.id);'></td>"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...