Как получить значение идентификатора с помощью карты () - PullRequest
1 голос
/ 12 февраля 2020

У меня есть страница, содержащая кнопку списка и кнопка поиска .

index. php:

<li class="page-item" id="'.$i.','.$record_per_page.'"><a class="page-link" href="javascript:void(0);" >'.$i.'</a></li>    
<input class="form-control" type="text" placeholder="insert your keyword ..." aria-label="Search" id="budget_keyword" name="<?=$record_per_page;?>">

скрипт. js:

$(document).on('click','#table-content .page-item',function () {
    var mode = this.id.split(',');
    var page = mode[0];
    var p = mode[1];
    var keyword = $('#budget_keyword').map(function() {
                  return this.id.value;
                  });
    $.ajax({
        url: "paging.php",
        method: "POST",
        data: { page: page, p: p, keyword: keyword },
        success: function (data) {
            $('#table-content').html(data);
        }
    })
});

Мои Цели :
Когда пользователь нажимает кнопку li , тогда он передаст 2 переменные, которые содержат значения из #page-item и #budget_keyword id. Я уже получил значение # page-item из моего скрипта выше, но для #budget_keyword кажется, что он возвращает объект, который я не могу понять ниже:

  Object { length: 0, prevObject: Object(1) }

Мне просто нужно значение из пользовательского ввода текста в окне поиска (#budget_keyword) Может кто-нибудь дать мне идею? извините за мой плохой английский sh

1 Ответ

2 голосов
/ 12 февраля 2020

Похоже, что в вашем HTML существует несколько входов с одинаковым id="budget_keyword". Из-за этого keyword не поступает должным образом (или, другими словами, map() не работает).

Вы можно использовать .next(), чтобы получить желаемое ключевое слово. Проверьте ниже код:

$(document).on('click','#table-content .page-item',function () {
    var mode = this.id.split(',');
    var page = mode[0];
    var p = mode[1];
    var keyword = $(this).next('.form-control').val();

    $.ajax({
        url: "paging.php",
        method: "POST",
        data: { page: page, p: p, keyword: keyword },
        success: function (data) {
            $('#table-content').html(data);
        }
    })
});

Примечание: - если только один id="budget_keyword" существует во всем документе, то непосредственно выполните:

var keyword = $('#budget_keyword').val();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...