У меня есть простое выпадающее меню и кнопка, которая отправляет форму ajax на странице, а функция js вызывает onclick
функцию этой кнопки в цикле с некоторой задержкой (каждые 10 секунд onclick
метод этой кнопки звонки и, следовательно, некоторая форма отправляется и обновляется).
Теперь проблема заключается в том, что каждый раз, когда нажимают кнопку через выпадающее меню js code, оно закрывается автоматически.
я подозреваю, что вызов по нажатию на эту кнопку крадет фокус выпадающего меню, и поэтому каждый раз, когда код js вызывает его, меню закрывается.
Итак, как я могу предотвратить такое поведение, когда вызывается onclick кнопки? или есть ли лучший способ отправить форму ajax в цикле с задержкой?
UPDATE
Код является частью большого проекта, но для лучшего понимания вы можете рассмотреть что-то вроде этого:
<div class="container">
<div class="dropdown">
<button class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown">Dropdown Example
<span class="caret"></span></button>
<ul class="dropdown-menu">
<li><a href="#">HTML</a></li>
<li><a href="#">CSS</a></li>
<li><a href="#">JavaScript</a></li>
</ul>
</div>
<form action="/navigationbar/_submitpush" data-ajax="true" data-ajax-mode="replace" data-ajax-update="#pushwindow" id="form3" method="post">
<button id="pushsubmitButton" type="submit" style="display:none">realSubmitButton</button>
<script type="text/javascript">
function checkingPush() {
//Doing something
setTimeout(goingToLoop, 5000);
}
function goingToLoop() {
document.getElementById('pushsubmitButton').click();
}
checkingPush();
</script>
</form>
</div>
Каждые 5 секунд goingToLoop
вызовы, и этот вызов onclick
Функция кнопки pushsubmitButton
и раскрывающееся меню закрывает
И вы можете смоделировать это с помощью консоли dev браузера (откройте выпадающее меню, выполните document.getElementById('pushsubmitButton').click()
в консоли, и меню закроется, даже если кнопка находится вне формы и ничего не делает)