Как получить путь кнопки, расположенной в ячейках таблицы - PullRequest
0 голосов
/ 12 мая 2018

enter image description here Я работаю над одной таблицей, где я создал одну кнопку, которую я использую в разных строках и таблицах на основе некоторых условий. У меня есть один сценарий, где мне нужно показать кнопку некоторым конкретным пользователям, я выполнил условие, однако я не могу получить путь к кнопке, я могу скрыть ячейку, но в этом случае полная ячейка удаляется из таблицы, которая не выглядит хорошо, пожалуйста, помогите мне найти путь к кнопке, чтобы я мог ее скрыть, вот код, который я использую:

  totalrows = document.getElementById("DEVmyTable").rows.length;

  for(i = 0;i<totalrows; i++){


  if(actualusernamevalue == currentusernamevalue){

  table.rows[i].cells[6].style.display = "";
  }
  if(actualusernamevalue != currentusernamevalue){

  table.rows[i].cells[6].style.display = "none";
  }
} 

Здесь, в ячейках [6], присутствует моя кнопка, которую я создаю динамически следующим образом:

row = document.getElementById("DEVFirstrow");
var w = row.insertCell(6); 
w.innerHTML = '<button onclick="Releaseentry(this)"type="button" 
id="release" class="btn btn-primary release">Release</button>';

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

в этом коде я спрятал ячейку, потому что для сокрытия кнопки я не могу найти путь, и это то, что я ищу.

Ответы [ 2 ]

0 голосов
/ 13 мая 2018

Я думаю, что наконец-то получил свое решение, спасибо @natan за вашу помощь.

 table.rows[i].cells[6].getElementsByTagName('button')[0].style.display = "none";

 table.rows[i].cells[6].getElementsByTagName('button')[0].style.display = "";

Я должен был использовать этот код.

0 голосов
/ 12 мая 2018

Вы на самом деле разрабатываете ячейку на основе table.rows [i] .cells [6] .style.display, а не ее содержимого.Вы выбираете шестую ячейку и стилизуете ее. Другая ошибка, которую вы делаете, заключается в том, что вы используете идентификатор в кнопке, в то время как кнопка используется в нескольких строках, что делает идентификатор бесполезным, поскольку он должен быть уникальным.То, что я хотел бы сделать, это просто использовать класс кнопок, а затем на основе проверок решить, что кнопка должна делать с помощью jquery, поэтому:

if (actualusernamevalue == currentusernamevalue) {

 $('.release').show();

} if (actualusernamevalue! = Currentusernamevalue) {

$('.release').hide();

}

Если я хорошо понимаю, что вы пытаетесь сделать, по крайней мере.Чем проще решение, тем лучше!

РЕДАКТИРОВАТЬ: Кстати, вы должны иметь в виду, что если кто-то хочет найти кнопку, когда вы играете со свойством display обоими способами, он всегда может найти его черезисходный код.Если кто-то осмотрит элемент и изменит CSS вручную, он сможет увидеть кнопку, поэтому всегда важно иметь проверку на стороне сервера и в подобных случаях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...