javascript — Тосты Materializecss с переполнением стека

Так что я делаю эту веб-панель управления, но я не очень хорошо с JS, я использую MaterializeCSS + HTML + PHP для DB логин и тд.

Я хотел бы иметь следующую простую функциональность, но по какой-то причине у меня не получается.

Я хотел бы ввести имя пользователя и пароль в моей форме и нажать Войти. Так как я не знаю как Toasts работать, я полагаю, как только я переключаю страницу Toast фактически исчезает, поэтому, возможно, лучше отобразить тост на новой странице учетной записи, а не на самой странице входа в систему. Я попробовал оба, но это не появляется.

Код для показа тостов:

echo "<script> Materialize.toast('Login successful!', 3000, 'rounded')   </script>";

Я нашел тему где-то на русском языке, говоря, что это проблема с DOM и снова использовал свое решение без успеха.

Примечание: я уже использую другие JS-зависимые компоненты, такие как Modals а также Tooltips,

Ошибка консоли: Uncaught ReferenceError: Materialize не определен

0

Решение

У меня было 2 проблемы. Самое главное, я тестировал код в IF, который даже не выполнялся. Глупый я. Во-вторых, я не использовал onDocumentReady — $(function(){});

Реферрер документов просто проверяет, какая страница отправила меня туда, но вот мой рабочий код для создания MaterializeCSS Toast из PHP:

echo "<script>
$(function(){
if (document.referrer == 'http://yourdomain/index.php?p=Login'){
Materialize.toast('Login successful', 2200, 'rounded')
}
});
</script>";
1

Другие решения

У меня была такая же проблема с одним из моих скриптов PHP. В итоге после долгих исследований я обнаружил, что не включил JQuery. CSS для Materialise требует загрузки JQuery перед файлом materialize.js. Убедитесь, что jquery загружен. Ошибка консоли появляется, потому что JQuery не загружен.

Я проверил этот код на моем локальном хосте без JQuery Toast не работает, но при загрузке он работает нормально.

<?php
if (isset($_GET['msg'])){
$msg = $_GET['msg'];
echo "<script>Materialize.toast('$msg', 3000, 'rounded');</script>";
}
?>
1

вы можете поместить свое условие if в php следующим образом

<?php
`if (document.referrer == 'http://yourdomain/index.php?p=Login')
{
echo "<script>
Materialize.toast('Login successful', 2200, 'rounded');
</script>";
}`
?>
0
По вопросам рекламы [email protected]