pregunta
Recientemente, utilicé EasyUI para desarrollar un sistema de fondo. Encontré un problema extraño durante la prueba. $ ('dg'). dataGrid ('recoad'); Al recargar los datos de la tabla, no tuve reacción en absoluto. Más tarde descubrí que no era que no hubiera respuesta, sino que el navegador usó caché.
Solución
Hay varias soluciones resumidas por los internautas en línea:
1. Agregue una marca de tiempo después de la URL, para que la URL accedida en la primera carga y la recarga sean inconsistentes, lo que hace que el sistema no pueda usar el caché IE. A través de las pruebas, se descubrió que la solicitud EasyUI ya tiene una cadena de números aleatorios _145232xxx después de que se solicitó, pero IE todavía usa caché. Más tarde, agregué rand = xxx (número aleatorio generado por math.rand ()) al JS solicitado y no usaría caché. (Probé de IE8 a IE11)
2. Use una forma similar para agregar <meta> a <fead> para borrar el caché:
La copia del código es la siguiente:
<Meta http-equiv = "pragma" content = "no-cache">
<Meta http-equiv = "cache-confontrol" content = "no-cache, must-revalidate">
<Meta http-oquiv = "expires" content = "mié, 26 de febrero de 1997 08:21:57 GMT">
Desafortunadamente, como muchos internautas, fallé este método. :(
3. Declarar el método correspondiente a la carga de datagrid como 'post', esta solución es la más rápida. Pero hay varios problemas:
• Si la interfaz del servidor no admite el modo de publicación, se detendrá.
• Si la interfaz del servidor puede controlarla en sí misma, ¡esta forma de compromiso para el front-end llevará a que la interfaz no sea muy tranquila en absoluto! Debe saber que la interfaz RESTFUL es básicamente para obtener el diseño de consultas.
Resumir
Entonces es el primer método. Agregar números aleatorios usted mismo en la URL es fácil de usar. Perdóname por estar obsesionado con el código que no quiero cambiar la interfaz del servidor _ (: з」 ∠) _.