Loading resources/views/adminGen/contactos/create.blade.php +20 −25 Original line number Diff line number Diff line Loading @@ -296,50 +296,45 @@ const fileUploadInstance = new FileUploadWithPreview.FileUploadWithPreview('myFirstImage', { images: { baseImage: 'assets/images/file-preview.png', backgroundImage: '', baseImage: 'assets/images/file-preview.png', // Imagen base de la vista previa backgroundImage: '', // Fondo de la vista previa (opcional) }, text: { chooseFile: 'Subir foto de perfil', browse: 'Seleccionar', clear: 'Eliminar', chooseFile: 'Subir foto de perfil', // Texto para elegir archivo browse: 'Seleccionar', // Texto para navegar por archivos clear: 'Eliminar', // Texto para limpiar archivos seleccionados }, }); // Asegurarse de que solo se acepten imágenes document.addEventListener('change', function(event) { const fileInput = document.querySelector('#file-upload-with-preview-myFirstImage'); console.log('Evento change detectado', event.target); // Verificar si el evento se captura if (event.target === fileInput) { console.log('Input de archivo detectado', fileInput); // Verificar si el input es el correcto if (event.target === fileInput) { const files = fileUploadInstance.cachedFileArray; console.log('Archivos seleccionados', files); // Verificar los archivos seleccionados if (files.length > 0) { const file = files[0]; console.log('Archivo seleccionado', file); // Verificar el archivo seleccionado if (file && !file.type.startsWith('image/')) { alert('Solo se permiten archivos de imagen.'); fileInput.value = ''; // Limpiar el input showToast("Solo se permiten archivos de imagen.", "Error", "error") // Limpiar la vista previa manualmente si es necesario const previewContainer = document.querySelector('.custom-file-container__image-preview'); if (previewContainer) { previewContainer.innerHTML = ''; // Limpiar la vista previa } // Limpiar la vista previa manualmente fileUploadInstance.options.images.baseImage = ''; // Limpiar la imagen base fileUploadInstance.resetPreviewPanel(); // Actualizar la vista previa // Limpiar el input de archivo fileInput.value = ''; // Limpiar el input de archivo fileUploadInstance.cachedFileArray = []; // Limpiar archivos seleccionados } } else { console.log('No hay archivos seleccionados'); } } }); // Asegurar que el input tiene el atributo accept correcto // Asegurar que el input tenga el atributo accept correcto setTimeout(function() { const fileInput = document.querySelector('#file-upload-with-preview-myFirstImage'); if (fileInput) { console.log('Atributo accept añadido', fileInput); // Verificar si el atributo accept se añade correctamente fileInput.setAttribute('accept', 'image/*'); } }, 500); Loading Loading
resources/views/adminGen/contactos/create.blade.php +20 −25 Original line number Diff line number Diff line Loading @@ -296,50 +296,45 @@ const fileUploadInstance = new FileUploadWithPreview.FileUploadWithPreview('myFirstImage', { images: { baseImage: 'assets/images/file-preview.png', backgroundImage: '', baseImage: 'assets/images/file-preview.png', // Imagen base de la vista previa backgroundImage: '', // Fondo de la vista previa (opcional) }, text: { chooseFile: 'Subir foto de perfil', browse: 'Seleccionar', clear: 'Eliminar', chooseFile: 'Subir foto de perfil', // Texto para elegir archivo browse: 'Seleccionar', // Texto para navegar por archivos clear: 'Eliminar', // Texto para limpiar archivos seleccionados }, }); // Asegurarse de que solo se acepten imágenes document.addEventListener('change', function(event) { const fileInput = document.querySelector('#file-upload-with-preview-myFirstImage'); console.log('Evento change detectado', event.target); // Verificar si el evento se captura if (event.target === fileInput) { console.log('Input de archivo detectado', fileInput); // Verificar si el input es el correcto if (event.target === fileInput) { const files = fileUploadInstance.cachedFileArray; console.log('Archivos seleccionados', files); // Verificar los archivos seleccionados if (files.length > 0) { const file = files[0]; console.log('Archivo seleccionado', file); // Verificar el archivo seleccionado if (file && !file.type.startsWith('image/')) { alert('Solo se permiten archivos de imagen.'); fileInput.value = ''; // Limpiar el input showToast("Solo se permiten archivos de imagen.", "Error", "error") // Limpiar la vista previa manualmente si es necesario const previewContainer = document.querySelector('.custom-file-container__image-preview'); if (previewContainer) { previewContainer.innerHTML = ''; // Limpiar la vista previa } // Limpiar la vista previa manualmente fileUploadInstance.options.images.baseImage = ''; // Limpiar la imagen base fileUploadInstance.resetPreviewPanel(); // Actualizar la vista previa // Limpiar el input de archivo fileInput.value = ''; // Limpiar el input de archivo fileUploadInstance.cachedFileArray = []; // Limpiar archivos seleccionados } } else { console.log('No hay archivos seleccionados'); } } }); // Asegurar que el input tiene el atributo accept correcto // Asegurar que el input tenga el atributo accept correcto setTimeout(function() { const fileInput = document.querySelector('#file-upload-with-preview-myFirstImage'); if (fileInput) { console.log('Atributo accept añadido', fileInput); // Verificar si el atributo accept se añade correctamente fileInput.setAttribute('accept', 'image/*'); } }, 500); Loading