Formulario de imagen de envío automático cuando Internet está disponible
Frecuentes
Visto 176 veces
0
Estoy tratando de crear una aplicación HTML5 sin conexión que envíe un formulario que contenga una imagen y una entrada de texto para una dirección de correo electrónico. cuando hay una conexión a internet disponible
Esto es lo que he probado:
<body>
<script type='text/javascript'>
window.onload = function () {
function submit() {
setInterval(function () {
if (navigator.onLine) {
//if internet is avaiable do:
document.getElementById("upload").submit();
}else {
//if no internet
var theDiv = document.getElementById("message");
var content = document.createTextNode("No internet");
theDiv.appendChild(content);
}
}, 1000);
}
}
</script>
<form action="post.php" method="post" enctype="multipart/form-data" id="upload">
<input type="file" name="uploaded" accept="image/*" capture><br>
<p>Skriv inn din epost: <input type="text" name="email"></p>
<input type="submit" value="Send ditt bilde!" name="sendimg" onclick="this.value='Submitting ..';this.disabled='disabled'; submit();">
<div class="message"></div>
¿Alguien tiene alguna sugerencia? Gracias :)
3 Respuestas
0
Hay dos formas de verificar esto
Esta solución requiere jQuery
$.ajaxSetup({
timeout: 1, // Microseconds, for the laughs. Guaranteed timeout.
error: function(request, status, maybe_an_exception_object) {
if(status == 'timeout')
alert("Internet connection is down!");
}
});
Y
window.navigator.onLine -- it will be false if the user is offline.
Debe usar lo anterior en su código con algunos ajustes según el requisito.
Respondido el 03 de diciembre de 13 a las 14:12
Milisegundos, creo. - McCainz
0
Lo siento, pero todavía no puedo comentar. esto funcionara?
<script type='text/javascript'>
window.onload = function () {
function submit() {
setInterval(function () {
if (window.navigator.onLine == "true") {
//if internet is avaiable do:
document.getElementById("upload").submit();
}else {
//if no internet
var theDiv = document.getElementById("message");
var content = document.createTextNode("No internet");
theDiv.appendChild(content);
}
}, 1000);
}
}
</script>
Respondido el 03 de diciembre de 13 a las 14:12
0
En lugar de verificar continuamente la conexión a Internet, puede usar eventos en línea y fuera de línea. Para referencia ver esto https://developer.mozilla.org/en/docs/Online_and_offline_events. Si el usuario está desconectado, guarde los datos en el almacenamiento local y luego vuelva a enviar los datos una vez que se detecte nuevamente el evento en línea.
Respondido el 04 de diciembre de 13 a las 08:12
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas javascript html forms offline or haz tu propia pregunta.
¿Ha intentado adjuntar el oyente de otra manera que no sea
onclick
? - SetthaseInternet siempre está disponible. Tal vez la conexión a Internet podría no serlo. - BrownEyes