Не работает click в javascript, нужна помощь

230
13 апреля 2018, 13:27

Всем привет, народ начинаю изучать js, вот есть скритец:

  $(document).ready(() =>
            {
                $("#rowPerPage").on("change", () =>
                {
                    var pages = $("#rowPerPage>option:selected").text();
                    //var pages = 15;
                    var form = $("form.search.pull-left");
                    var input = $("<input>").attr(
                            {"type": "",
                             "name": "pages",
                             "id": "pages",
                             "value": pages
                            }
                    );
                    $(input).appendTo(form);
                    document.getElementById("#filtAccept").click();
                });
            });

вот форма:

 <form class="search pull-left" style="padding-right: 5px;" method="get" name="frm" action="Search">
       <label>Що</label> <input type="text" minlength="3" size="12px" name="osdch" value="${osdch}" id="osdch" align="middle" placeholder="Осд(Що)">
       <label>Куди</label> <input type="text" minlength="3" size="12px" name="osdk" value="${osdk}" id="osdk" align="middle" placeholder="Осд(Куди)">
       <label>Код виробу</label> <input type="text" size="12px" name="kiz" value="${kiz}" id="kiz" align="middle" placeholder="Код виробу">
       <input type="hidden" name="page" id="page" value="1">
       <input type="hidden" name="count" id="count" value="0">

<%      long curTime2 = System.currentTimeMillis();
        String svi = new SimpleDateFormat("dd.MM.yyyy").format(curTime2);
                                            %>
        <input type="hidden" name="svi" id="svi" value="<%=svi%>">
        <button id="filtAccept" class="btn  btn-md btn-success" data-toggle="tooltip" data-placement="bottom" title="Виконати фільтр">
        <span class="glyphicon glyphicon-ok"></span></button>
        </form>

И собственно вопрос, почему не срабатывает автоматически кнопка?: document.getElementById("#filtAccept").click();

Answer 1

Потому что click - это метод jQuery, а вы пытаетесь с его помощью работать с нативным html элементом, полученным нормальным способом. Вам нужно либо

$("#filtAccept").click();

Либо

document.getElementById("filtAccept").dispatchEvent(new Event('click'));

UP: Бес попутал, так натурально можно:

document.getElementById("filtAccept").click();
<button id='filtAccept' onclick='console.log(1)'>Button</button>

READ ALSO
Браузер перестал видеть часть стилей? [требует правки]

Браузер перестал видеть часть стилей? [требует правки]

Пациент - по ссылкеВчера перестали показываться часть стилей

158
Группировка блоков разный высоты в один контейнер

Группировка блоков разный высоты в один контейнер

Как на bootstrap можно реализовать такой набор блоков? Запасной вариант для меня это js либа masonryКаким решением вы б воспользовались?

202