Cómo impedir que Google Chrome almacenamiento en caché de mis entradas, especialmente los ocultos cuando el usuario haga clic en Atrás?

StackOverflow https://stackoverflow.com/questions/2629593

Pregunta

tengo una asp.net mvc aplicación que tienen un buen número de entradas ocultas para mantener los valores de todo y dar formato a sus nombres para que pueda utilizar la unión del Modelo más tarde, cuando envíe el formulario.

i tropezar en un bicho raro con cromo, que no tengo con IE o Firefox cuando el usuario somete el formulario y haga clic en el botón de atrás, me parece que Chrome mantener los valores de entrada ocultos también.

todo este trozo se genera a través de JavaScript, por lo tanto creo cromo es el cacheado esto.

function addProductRow(productId, productName) {

    if (productName != "") {



        //use guid to ensure that the row never repeats
        var guid = $.Guid.New();

        var temp = parseFloat($(".tboProductCount").val());

        //need the span to workaround for chrome
        var szHTML = "<tr valign=\"top\" id=\"productRow\"><td class=\"productIdCol\"><input type=\"hidden\" id=productRegsID" + temp + "\" name=\"productRegs[" + temp + "].productId\" value=\"" + productId + "\"/>"
          + "<span id=\"spanProdID" + temp + "\" name=\"spanProdID" + temp + "\" >" + productId + "</span>"
          + "</td>"
          //+ "<td><input type=\"text\" id=\"productRegName\" name=\"productRegs[" + temp + "].productName\" value=\"" + productName + "\" class=\"productRegName\" size=\"50\" readonly=\"readonly\"/></td>"
          + "<td><span id=\"productRegName\" name=\"productRegs[" + temp + "].productName\" class=\"productRegName\">"+ productName + "<\span></td>"
          + "<td id=\"" + guid + "\" class=\"productrowguid\" \>"
          + "<input type=\"text\" size=\"20\" id=\"productSerialNo" + temp + "\" name=\"productRegs[" + temp + "].serialNo\" value=\"" + "\" class=\"productSerialNo\" maxlength=\"18\" />"
          + "<a class=\"fancybox\" id=\"btnImgSerialNo" + temp + "\" href=\"#divSerialNo" + temp + "\"><img class=\"btnImgSerialNo\" src=\"Images/landing_14.gif\" /></a>"
          + "<span id=\"snFlag" + temp + "\" class=\"redWarning\"></span></td>"
          + "<td><input type=\"text\" id=\"productRegDate" + temp + "\" name=\"productRegs[" + temp + "].PurchaseDate\" readonly=\"readonly\" />"
          + "<span id=\"snRegDate" + temp + "\" class=\"redWarning\"></span></td>"
          + "<td align=\"center\"><img style=\"cursor:pointer\" id=\"btnImgDelete\" src=\"Images/btn_remove.gif\" onclick=\"javascript:removeProductRow('" + guid + "')\" /><div style=\"display:none;\"><div id=\"divSerialNo" + temp + "\" style=\"font-family:verdana;font-size:11px;width:600px\">" + serialnumbergeneral + "<br /><br />" + getSNImageByCategory(productId) + "</div></div></td>"
          + "</tr>";

        $(".ProductRegistrationTable").append(szHTML);
        $("a.fancybox").fancybox();

        //initialization
        $("#productRegDate" + temp).datepicker({
            minDate: new Date(1996, 1 - 1, 1),
            maxDate: 0
        });

        //sanity check
        //s7test
        alert('1 '+$("#spanProdID" + temp));
        alert('2 '+$("#productRegsID" + temp));


} //end function addNewProductRow

necesito el id que se actualiza cuando el usuario seleccione un nuevo producto, pero poner otra etiqueta span junto a él muestra que el lapso tendrá el nuevo id de la entrada oculta todavía tendrá el id anterior.

¿hay una manera elegante de solucionar este problema?

gracias

¿Fue útil?

Solución

Movido aquí después de leer @pruts comentario;)

mi jefe encontró la respuesta, era una sencilla autocompletar = "off" añadido a los atributos de entrada, aunque vwd bandera voluntad como un error:)

Otros consejos

Creo que se puede restablecer los campos ocultos, tan pronto se carga la página.

<script type="text/javascript">
  $(function() {
      $("input[type=hidden]").val("");
  });
</script>

Este código se ejecuta cuando se pulse "volver".

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top