【问题标题】:a href 'on click' not executing JQuery一个href'点击'不执行JQuery
【发布时间】:2014-11-25 22:04:40
【问题描述】:

问题背景:

我正在尝试将两个参数(产品名称和价格)从视图传递到我的 MVC 控制器上的“AddToCart”方法。我通过将参数传递给 JQuery Ajax 函数来做到这一点。

问题:

目前,当单击“添加到购物车”按钮“链接”时,不会触发脚本。没有错误,但该过程没有发生。

代码如下:

<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>

//View:
<h3 class="panel-title boldFeatures" id="name">@((ViewBag.data as List<LoginTest.Models.HomePageItem>).First().ProductName)</h3>

<p id="price">@((ViewBag.data as List<LoginTest.Models.HomePageItem>).First().productPrice)</p>

<a class="btn btn-primary btn-block" id="addToCart">Test</a>



//Script:
<script>
    $("#addToCart").on('click',function (e) {
        e.preventDefault();
        $.ajax({
            url: '/HomePage/AddToCart',
            data: { name: $('#name').text(), qty: $('#price').text() },
        });

    });
</script>



//Method on controller:
 public void AddToCart(string name, string qty)
    {
       //Logic for adding to the cart.
    }

【问题讨论】:

    标签: jquery asp.net-mvc


    【解决方案1】:

    删除了数据对象后面的逗号。 还在您的 ajax 调用中添加了 POST 方法。

       <a href="#" class="btn btn-primary btn-block" id="addToCart">Test</a>
    
    
    
        //Script:
        <script>
            $("#addToCart").on('click',function (e) {
                e.preventDefault();
                $.ajax({
                    url: '/HomePage/AddToCart',
                    type: 'POST',
                    data: { name: $('#name').text(), qty: $('#price').text() }
                });
    
            });
        </script>
    

    【讨论】:

    【解决方案2】:
    ... href="javascript:void(0);">测试 ... $("#addToCart").click(function(e){ $.ajax({ url: '/HomePage/AddToCart', 数据:{ 名称:$('#name').text(),数量:$('#price').text() } // , }); ...

    【讨论】:

    • 他们已经在 click 事件上有了 preventDefault 。这只是混淆了标记。
    • 标记更改明确表明它不应该在客户端运行...如果绑定方法中有错误,或者绑定方法上方的错误,那么 preventDefault 将失败。
    猜你喜欢
    • 1970-01-01
    • 2018-08-01
    • 2013-07-28
    • 1970-01-01
    • 2010-12-30
    • 2011-08-15
    • 1970-01-01
    • 1970-01-01
    • 2023-04-11
    相关资源
    最近更新 更多