У меня есть простая страница оплаты, которую я собираюсь показать во всплывающем окне, используя частичный вид. На странице .cshtml
у меня есть следующий код javascript под кодом html:
<script type = "text/javascript" src = "https://js.stripe.com/v2/"></script>
<script type = "text/javascript">
$('document').ready(function () {
Stripe.setPublishableKey(publishablekey);
});
</script>
Когда я запускаю проект, всплывающее окно отображается успешно, но в консоли появляется ошибка: Uncaught ReferenceError: Stripe is not defined
.
Это происходит, когда браузер не может загрузить библиотеку Stripe js. Это может произойти из-за того, что ваш пользователь потерял подключение к Интернету или, возможно (что менее вероятно), веб-сайт, обслуживающий библиотеку Stripe, временно недоступен. Чтобы изящно справиться с этим случаем, вы можете проверить, не определен ли Stripe.
Например:
if (typeof Stripe === "undefined") {
alert("Unexpected Error");
}
Или проверьте обратное перед использованием
if (typeof Stripe !== "undefined") {
Stripe.setPublishableKey(publishablekey);
}
Я только что добавил справочную строку Stripe: <script type = "text/javascript" src = "https://js.stripe.com/v2/"></script>
на той странице, на которой я собираюсь показать частичный вид во всплывающем окне.
На отдельной странице он работает нормально, но когда я пытаюсь отобразить эту страницу во всплывающем окне, используя частичное представление, которое выдает ошибка.