[英]Web app calling two times the same method
我有一个ASP.NET(C#)
应用程序。
在我的HomeController中 :
public ActionResult Itens()
{
// Do anything here, doesn't matter.
return PartialView("_Itens");
}
在我的PartialView中 :
<div class="itensPaginacaoEstilo">
<div id="loadingPaginacao" class="divLoadingPaginacao" style="display: none">
<img src="~/Content/Img/loadingAnimado.gif"/>
</div>
<div id="paginacaoProdutos" class="pagination a-paginacao-estilo">
@Html.PagedListPager(produtosPaginados, page => Url.Action("Itens", new { page, perPage = perPage, filtrosColecao = filtrosColecao, filtrosHierarquia = filtrosHierarquia, filtrosLegendaLinha = filtrosLegendaLinha, filtrosFamilia = filtrosFamilia, filtrosMarca = filtrosMarca, filtrosEstoque = filtrosEstoque, filtrosMix = filtrosMix, chamador = chamador }), PagedListRenderOptions.EnableUnobtrusiveAjaxReplacing(new AjaxOptions { UpdateTargetId = "retorno", OnBegin = "MostraLoadingPaginacao()", OnComplete = "EscondeLoadingPaginacao(), MandaParaTopo()"}))
</div>
</div>
@ Html.PagedListPager生成什么:
在我的案例中, Url.Action
隐式地带来了一个将生成分页的代码,并且在分页的每个按钮中,他都使我下面的代码更加简洁。
生成的代码 :
<li>
<a data-ajax="true" data-ajax-begin="MostraLoadingPaginacao()" data-ajax-complete="EscondeLoadingPaginacao(), MandaParaTopo()" data-ajax-mode="replace" data-ajax-update="#retorno" href="/Home/Itens?page=4&perPage=25&filtrosColecao=1%2C&chamador=0">4</a>
</li>
问题 :
我引用的方法“强度”:
href="/Home/Itens?page=4&perPage=25&filtrosColecao=1%2C&chamador=0">4</a>
...执行两次“强度”方法。
---为什么会这样?
我发现我的项目出了什么问题。 我正在使用以下两个JavaScript
文件:
<script src="~/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
然后我发现每个文件都调用了一次ajax。
解决方案:
研究这两个文件后,我发现它们是相同的。 它们之间唯一改变的是,一个比另一个更紧凑。
因此,我删除了ajax.js
,只在项目中保留了ajax.min.js
:
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
现在,这些方法只适用一次。 效果很好。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.