Estoy trabajando en un sitio web básico de cuestionarios HTML / CSS / JavaScript.

Estoy usando un JavaScript externo para la recopilación de datos de un formulario HTML en JavaScript como tal:

var userInfo = [];
function savePerson(form)
{
    userInfo[0] = form.store.value;
    userInfo[1] = form.employeeId.value;
    userInfo[2] = form.fName.value;
    userInfo[3] = form.lName.value;
};

Esto funciona bien

Ahora, necesito ir a una página HTML diferente pero mantener los valores en la matriz. ¿JavaScript se recarga entre archivos HTML? Si es así, ¿cómo puedo mantener los valores de un script a través de varias páginas?

4
Hayden E 16 feb. 2017 a las 18:45

4 respuestas

La mejor respuesta

Debe almacenarlos en el lado del cliente o en el lado del servidor.

Para el almacenamiento del lado del servidor, debe enviar los datos al servidor a través de ajax y guardarlos en cualquier tipo de base de datos.

En el lado del cliente, puede almacenar los datos en cookies, almacenamiento local, indexeddb o websql.

Una solución simple sería:

localStorage.setItem('myPerson', JSON.stringify(userInfo));
0
pubkey 16 feb. 2017 a las 15:49

Usar almacenamiento local

//save datas:
localStorage.setItem('data', JSON.stringify(info));


//get datas:
var data=localStorage.getItem('data');
0
x-rw 16 feb. 2017 a las 15:54

Si utiliza información confidencial, es probable que desee utilizar un servicio de back-end para almacenar y recuperar dichos datos, pero en la mayoría de los casos se pueden usar cookies o almacenamiento local.

Aquí hay un ejemplo usando el almacenamiento local

Establecer el artículo:

localStorage.setItem('userInfo', userInfo);

Luego, en su próxima página, use esto para obtener el artículo:

var userInfo = localStorage.getItem("userInfo");
0
DeclanPossnett 16 feb. 2017 a las 15:54

Puede guardar la matriz como un archivo .js utilizando las funciones de guardado de archivos de html5. Y luego, en la otra página html, cargaría el archivo js como un script externo.

0
El gato carlos 16 feb. 2017 a las 15:53