Запускать функцию JavaScript при загрузке страницы, а также при setInterval - PullRequest
0 голосов
/ 19 января 2019

Мой текущий скрипт

setInterval(function() {
    $.ajax({
        url:"query.php?currency=<?=$currencycode;?>"
    }).done(function(data) {
        $("#value").attr("value", data).attr("size", data.length - 2);
    });
},3000);

Моя веб-страница запрашивает только php-файл каждые 3 секунды, но я хочу сделать так, чтобы он запрашивал, когда страница открыта, а затем выполнять цикл, обновляя значение для моего ввода каждые 3 секунды. Теперь вам нужно подождать 3 секунды, пока значение не будет обновлено.

1 Ответ

0 голосов
/ 19 января 2019

Отделите функцию от метода setInterval() и измените анонимную функцию на именованную функцию.

Теперь все, что вам нужно сделать, это вызвать функцию как при загрузке страницы, так и в setInterval(), простоссылаясь на имя функции следующим образом:

function someFunc() {
    $.ajax({
        url:"query.php?currency=<?=$currencycode;?>"
    }).done(function(data) {
        $("#value").attr("value", data).attr("size", data.length - 2);
    });
}

someFunc(); // function will invoke on page load

setInterval(someFunc, 3000); // function will invoke after every 3 seconds

Проверьте и запустите фрагмент кода ниже для практического примера вышеупомянутого подхода:

function someFunc() {
  console.log("yes")
}

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