1

快速提问,我有这个观点

    <div class="product_list">
        @Html.Action("GetProducts", "Products")
    </div>

控制器很简单

public ActionResult GetProducts(string country, string currency, int category){
    var viewModel = new ProductsViewModel{
        Products = _proxy.GetProducts(country, currency, category, page)};

    return PartialView(viewModel);
}

然后 GetProducts 视图只是在 foreach 循环中呈现每个产品

如果启用了 JS 并且使用 JQuery 异步调用 te 服务,我想防止这种情况发生。就像是

$(".product_list").SOMETHING(function(event) {
    event.preventDefault();
    ...
 });

我怎样才能做到这一点?

4

1 回答 1

1

试试这个:

$(".product_list a").click(function(event) {
    event.preventDefault();
    // code to be executed.
 });

编辑: 根据@kooshka 评论

当 JS 禁用时:

<div class="product_list">
    <!-- Will execute when JS is disabled in browser -->
    <noscript>
        @Html.Action("GetProducts", "Products")
    </noscript>
</div>

当启用 JS 时,脚本代码应该是:

$(".product_list").SOMETHING(function(event) {
    event.preventDefault();
    $(".product_list").html('@Html.Action("GetProducts", "Products")');
    ...
});

祝你好运 !!

于 2012-10-14T13:02:05.327 回答