Как сделать кликабельным только один столбец таблицы - PullRequest
0 голосов
/ 29 ноября 2018

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

Данные ячейки для идентификатора:

<td align="center" class="member_id" id="member_id" >
   <?php echo $wpdb->get_var( "SELECT * FROM $table_name ORDER BY $table_name.`last_name` ASC ", 0, $cur_row); ?>
</td> <!--- ID --->

Файл JS:

$jq("#mem_dir").delegate("td", "click", function() {
   alert("Clicked on a cell");
   if ($jq(this).hasClass("member_id")) {
      alert("Clicked on a member ID");
   var member_id = $jq(this).text();
   alert ("Member ID is: " + member_id);
}

Я бы очень хотел сделать то, что сделал для данных ячейки адреса электронной почты, но не понял, как это сделать.

Кликабельные данные ячейки электронной почты:

<td><?php echo make_clickable($wpdb->get_var( "SELECT * FROM $table_name ORDER BY $table_name.`last_name` ASC ", 3, $cur_row)); ?></td> <!--- email --->

Спасибо за любую помощь или предложения.

1 Ответ

0 голосов
/ 30 ноября 2018

На самом деле, это было намного проще, чем я думал.Я просто изменил селектор метода делегата на класс интересующей колонки:

$jq("#mem_dir").delegate(".member_id", "click", function() {
    var member_id = $jq(this).text();
    var member_id = member_id.trim();
    alert ("ID is: " + member_id);

С небольшим CSS в классе для создания указателя при наведении курсора на ячейку все работало нормально:

#member_id {
    color: blue;
    text-decoration: underline;
    cursor: pointer;
}
...