Я собираю некоторые данные из формы и публикую их в Google Sheet onClick. После публикации данных пользователь перенаправляется на другую страницу.
Я написал код в ванильном Javascript - приложение в vue, но метод в чистом JS).
Все хорошо работает в настольных браузерах, но не в мобильных браузерах (Chrome & Safari на iOS), где данные не публикуются и пользователь не перенаправляется. Похоже, кнопка ничего не делает.
Это мой код:
buttonAction () {
this.checkedStar()
this.$emit('close')
}
проверка формы звезды:
checkedStar () {
let star = document.getElementsByTagName('input')
for (var i = 0; i < star.length; i++) {
if (star[i].type === 'radio' && star[i].checked) {
this.starRating = document.getElementById(star[i].id).value
}
}
// save data in state
this.$store.dispatch('setStarRating', this.starRating)
// calling the google sheet method
this.saveToGoogleSheet()
}
Публикация в Google Sheet:
saveToGoogleSheet () {
const scriptURL = 'https://script.google.com/macros/s/.../exec'
const form = ''
var sendingData = new FormData(form)
sendingData.append('starRating', this.feedbackData.starRating)
fetch(scriptURL, {method: 'POST', body: sendingData})
}
Опять же, это отлично работает на рабочем столе, проблема на мобильном телефоне.
проблема мобильного браузера, похоже, известна. однако я не нашел четкого ответа о том, в чем заключается проблема (Google Sheet API, FormData или выборка и т. д.) и есть ли обходной путь.
Я также попробовал на chrome вариант «запросить сайт рабочего стола», но он все равно не работает.
Как я могу заставить этот код работать в мобильном браузере?