Получить текст дочернего узла в среде бритвы - PullRequest
0 голосов
/ 23 ноября 2018

Мне было интересно, как можно было бы получить значение от дочернего узла?Я использую бритву в передней части и хотел найти все, что отображается на главной странице.

Бритва

<li class="media dotted">
                                            <img class="mr-3" src="~/images/emp-list/mm.png" alt="">
                                            <div class="media-body d-flex">
                                                <div class="text">

                                                    <h5 class="mt-0 mb-1">@Html.DisplayFor(modelItem => item.Firstname) @Html.DisplayFor(modelItem => item.Lastname)</h5>
                                                    @Html.DisplayFor(modelItem => item.Title) (<span class="loc">@Html.DisplayFor(modelItem => item.Location.LocationCode)</span>)
                                                </div>
                                            </div>
                                        </li>

JS

function search() {
            var input = document.getElementsByClassName('mt-0');
            var filter = document.getElementById('employeeSearch').value.toUpperCase();
            // Loop through all list items, and hide those who don't match the search query
            for (i = 0; i < input.length; i++) {
                var currentElem = input[i];
                var currentElemChild = input[i].children[0];
                if (currentElemChild.innerHTML.toUpperCase().indexOf(filter) > -1) {
                    currentElem.style.display = "";
                }
                else {
                    currentElem.style.display = "none";
                }
            }
        }
        document.getElementById('employeeSearch').addEventListener('keyup', search());

Я посмотрел в отладчике Chrome (рисунок 1) и вижу, что значение, которое я пытаюсь найти, находится в дочернем узле класса, который я выбираю.Не уверен, как получить к нему доступ.Ценю любую помощь, спасибо.figure1

1 Ответ

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

Для доступа к требуемому значению дочернего узла:

 `var input = document.getElementsByClassName('classname');
  for (var i = 0; i < input.length; i++)
  {
     var currentElem = input[i]; 
     var currentElemChild = input[i].childNodes[0];
     currentElemChild.nodeValue
  }`
...