0

我想知道在其中一件商品上单击购买按钮时的最佳做法是什么。我希望它看起来唯一正在发生的事情是购物车正在闪烁另一件商品。我应该怎么做才能做到这一点。我应该通过 POST 操作发送大量信息,以便我可以重新创建相同的页面并滚动到相同的位置(这将非常不方便),还是有更智能和更好的解决方案。我正在使用 Visual Studio 和 MVC 3

正如你可能理解的那样,我对网页设计还是很陌生,尽管在过去的 15 年里我时不时地使用它。

问候

4

1 回答 1

1

设计您的网站以使其在非 js 环境中正常工作是一种很好的做法。在这种情况下,您的按钮将提交带有整页刷新的表单。您的页面已重新加载,您的购物篮现在向用户指示其中有一个额外的项目。

为了给我们的用户提供更好的体验,我们可以使用 AJAX 调用来增强提交操作。

这可以通过在 jQuery 中编写一个触发按钮的单击事件(或表单的提交事件)的 AJAX 调用来完成。

在表单提交上使用 jQuery 的示例

$('form').submit(function(e){
    e.preventDefault(); //prevents full post-back

    $.ajax({
      type: "POST",
      url: "\\somesite\endpoint",
      data: $(this).serialize()
    }).done(function( bacon ) {
       alert( "Receive: " + bacon );
    });
});

MVC 3 Ajax 扩展

MVC3 也有一些 AJAX 扩展方法来帮助我们。尤其是Ajax.BeginForm

@using (Ajax.BeginForm())
{
    /* Your form elements here */

    <input type="submit" value="OK" />
}

这是一个关于如何使用它的简单示例How to use ajax beginform

于 2013-03-28T17:01:13.833 回答