href, сгенерированный в javascript, не выполняет действие mvc во второй раз - PullRequest
0 голосов
/ 24 сентября 2018

Я создаю html, как это в javascript, так как вы можете увидеть тег в html

, когда я нажимаю первый раз по ссылке, он срабатывает, но иногда (может быть, в 90% случаев) второй щелчокне срабатывает, если я не очищу кеш Firefox или Chrome, что здесь происходит?и как я могу решить эту проблему?

$.each(response, function (index, item) {
                            htmlcontent = "<div class=''>" +
                                "<a target='_blank' href='/Stat/" + item.Code + "/" + item.RId + "'>" +
                                "<img class=''  src='/Images/" + item.ImageId + "'/>" +
                                "</a>" +
                                "</div>";
                            $('.div_SecondCol').eq(index).html(htmlcontent);
                        });

и это действие

 // GET: Stat/{code}/{RId}
public ActionResult AdsStat(string Code, int? RId)
        {

            try
            {
                #region Load Data
                  //some code
                #endregion
                #region Insert Data
                  //some code
                #endregion

                return RedirectPermanent(externalUrl);

            }
            catch (Exception e)
            {

            }
        }

, когда я добавляю случайное число в конце href, это работает!но мне нужно знать, что здесь происходит?

var randnum = Math.floor((Math.random() * 1000) + 1);
"<a target='_blank' href='/Stat/" + item.Code + "/" + item.RId + "?rnum=" + randnum + "'>" +

1 Ответ

0 голосов
/ 24 сентября 2018

Я думаю, это потому, что постоянные перенаправления HTTP 301 кэшируются по умолчанию.Таким образом, браузер открывает кэшированную страницу с идентичным URL, вместо того, чтобы совершать поездки на сервер.Вот почему он работает, когда вы добавляете случайный параметр url.

Подробнее о кэшировании на Ссылка

Если вы хотите отключить кэширование вообще или отключить кэширование для определенного действия.Я бы предложил попробовать решение из Запретить кеширование в ASP.NET MVC или ASP.NET MVC, как отключить опцию автоматического кэширования

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...