Я работаю над ASP.NET, и в представлении у меня есть такой код. Если я использую сладкое оповещение вне функции, оно работает, и если я изменяю сладкое оповещение на обычное оповещение, оно тоже работает, но это не так. t работает как код ниже. (у меня тоже скрипт с библиотекой на вьюшке)
<input type = "submit" value = "Create" class = "btn btn-default" onclick = "return foo();" />
<script type = "text/javascript">
function foo() {
swal("Good job!", "You clicked the button!", "success")
return true;
}
</script>ну, очевидно, вам не хватает функции; что такое свал?
@MilanRilexRistic — это широко используемая библиотека, которая создает диалог. Это последний тег.
@epascarello, так как я могу запустить Swal в тип ввода
хорошо, вы забыли включить библиотеку js и css
Код работает нормально, я отредактировал фрагмент, см.
@MaheerAli, редактирование рассматриваемого кода, чтобы заставить его работать, противоречит цели вопроса и сбивает с толку будущих посетителей.
@HeribertoLugo Это не имеет НИЧЕГО СВЯЗИ с не включенными сценариями. lol ОП имеет это в своем коде, и он работает .... Дело в том, что он находится в форме, и форма отправляется .... Так что откат назад был неправильным при редактировании ....
@epascarello включения не было в первоначально опубликованном коде. я не видел, где он заявил, что его проблема была почтой. он просто сказал "это не работает", и необходимые библиотеки не были включены. поэтому и не получилось..
@epascarello, но я определенно понимаю, откуда ты. я проголосовал за вас, но до сих пор не ясно, была ли это его проблема или он забыл включить библиотеки. он сам сказал, что «все это работает».., комментируя решение, которое только что включила библиотека. новая проблема в том, что они работают слишком быстро, лол
OP отредактировал, чтобы добавить его, и кто-то удалил его. Мой самый первый комментарий видел проблему без кода библиотеки. Полагаю, никто не читал его, пока я начал отвечать.
нет .. человек, который добавил его, удалил его из-за комментария, который я сделал .. но, перечитав его вопрос 10 раз, я думаю, вы правы, предполагая, что его пост не работает. ваше решение должно быть помечено как ответ. хорошая работа!



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


хорошо, вы забыли включить библиотеку js и css
<link rel = "stylesheet" href = "https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.css">
<script src = "https://cdnjs.cloudflare.com/ajax/libs/sweetalert/1.1.3/sweetalert.min.js"></script>
<input type = "submit" value = "Create" class = "btn btn-default" onclick = "return foo();" />
<script type = "text/javascript">
function foo() {
swal("Good job!", "You clicked the button!", "success")
return true;
}
</script>Это работает, но очень быстро. Это способ исправить это?
Если вы щелкнете всю страницу после запуска фрагмента, вы заметите, что он работает так, как ожидалось.
НЕТ, он отправит форму! Это неправильно. лол .... Проблема не в том, что OP не включал код библиотеки ....
Как за неправильный ответ проголосовали 3 раза.... LOL Кнопка отправки в форме отправляет. Страница будет отправлена, поэтому сообщения там не будет....
Когда вы нажимаете кнопку отправки, он отправляет форму.
С предупреждением он блокирует браузер, поэтому код будет ждать, пока вы не нажмете «ОК», а затем не отправите форму. Но проблема, когда вы переходите на использование сладкого оповещения, вы не можете заблокировать действие браузера. Поэтому вам придется отменить клик и отправить форму вручную.
// called onclick of the submit button
function foo() {
swal("foo")
.then(function() {
// manually submit the form
document.getElementById("yourFormId").submit()
});
return false; // cancel the button click
}<script src = "https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
<form id = "yourFormId">
<input type = "submit" value = "Create" class = "btn btn-default" onclick = "return foo();" />
</form>Этот ответ и другой работают нормально, но сладкое предупреждение появляется очень быстро
Значит, нет способа показать полное сладкое предупреждение в отправке?
Wowzers .... прочитайте мой ответ. Вы должны отменить нажатие кнопки и вручную отправить форму, используя обратный вызов приятных предупреждений.
Я отредактировал свой ответ с рабочим примером с отправкой формы после нажатия кнопки swal. Здесь показано, как отменить нажатие кнопки отправки и отправить форму, когда вы будете готовы. Если вы планируете сделать это «вы уверены», вам нужно использовать переданное значение, чтобы либо отправить, либо отменить его.
swal не может предотвратить запуск кнопки. Это не «ожидание» в JavaScript. Так что он не может действовать как windlow.alert()