尝试获得正确的GET链接,该链接显示购物车中的良好信息

时间:2011-05-07 07:03:49

标签: php javascript jquery

好的,这是我经过几个月的互联网搜索后的问题。我想从jquery获取正确的链接以获取正确的div并在页面上显示它们。现在,文件以GET

为根

我有2个文件。

shopping_cart.php和jquery-oscart.js

jquery-oscart.js

     $.ajax({
      type: 'POST',
       url:  encodeURI($(location).attr('href')) + '&action=update_product&ajax=1',
      data: $('form[name=cart_quantity]').serialize(),
      async:false,
      success: function(data) {
        $("#content-body").html(data);
        //Hide_Load();
        //update_cart();
      },
      dataType: 'html'
    });
    // Updating cart total
    //
    $.ajax({
        type: 'POST',
      url:  encodeURI($(location).attr('href')) + '&action=update_product&show_total=1&ajax=1',
        data: $('form').serialize(),
        success: function(data) {
            $('#boxcart-total').html(data);
            //Hide_Load();
            }
        });
  return(false);
});

行动:.attr('action')

显示的div应该是shoppingcart文件中的#content_body。

在shoppingcart.php文件中有一个调用的行为:

<script type="text/javascript" src="js/jquery-oscart.js"></script>
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>

在正常状态下没有问题。

这是我的问题。

执行文件时,Firefox给出了以下规则:

POST domain../index.php?option=com_oscommerce&osMod=shopping_cart&Itemid=2&action=update_product&ajax=1

GET domain../index.php?option=com_oscommerce&osMod=shopping_cart&Itemid=2

POST domain../index.php?option=com_oscommerce&osMod=shopping_cart&Itemid=2&action=update_product&show_total=1&ajax=1

GET domain../index.php?option=com_oscommerce&osMod=shopping_cart&Itemid=2

而不是

POST domain../index.php?option=com_oscommerce&osMod=shopping_cart&Itemid=2&action=update_product&ajax=1

GET domain../index.php?option=com_oscommerce&osMod=shopping_cart&Itemid=2&ajax=1

POST domain../index.php?option=com_oscommerce&osMod=shopping_cart&Itemid=2&action=update_product&show_total=1&ajax=1

GET domain../index.php?option=com_oscommerce&osMod=shopping_cart&Itemid=2&show_total=1&ajax=1

在GET中。我想念&amp; ajax = 1和&amp; show_total = 1&amp; ajax = 1

必须在jquery_oscart.js中更改某些内容但我不知道在哪里更改......

我尝试了使用正确链接的.load函数,但这不是解决方案。

我希望有人能帮助我。


原始代码是:

 jQuery.ajax({
  type: 'POST',
  url: encodeURI($('form[name=cart_quantity]').attr('action')) + '&ajax=1', 
 data: jQuery('form[name=cart_quantity]').serialize(),
    success: function(data) {
   jQuery("#content-body").html(data); 
    //Hide_Load();
    //update_cart();

}
});
// Updating cart total

jQuery.ajax({
   type: 'POST',
url: encodeURI($('form[name=cart_quantity]').attr('action')) + '&show_total=1&ajax=1', 
   data: jQuery('form').serialize(),
     success: function(data) {
        jQuery('#boxcart-total').html(data); 
        //Hide_Load();
        }
    });

返回(假); });

它给出了链接:

域/ index.php的&安培; AJAX = 1

而不是

域../的index.php选项= com_oscommerce&安培; osMod = shopping_cart&安培; ITEMID = 2及行动= update_product&安培; AJAX = 1

这可能是'形式'吗?它似乎将我发送到index.php而不是index.php?option = com_oscommerce&amp; osMod = shopping_cart

问题解决了吗?选项...链接已隐藏。我看到另一个文件。现在POST链接很好。我得到的问题是GET链接。

似乎是url:encodeURI($('form [name = cart_quantity]')。attr('action'))+'&amp; ajax = 1',

获取2个链接POST返回GET。返回的链接最后错过了&amp; ajax = 1。

2 个答案:

答案 0 :(得分:0)

也许试试

url:  encodeURI($(location).attr('href') + '&action=update_product&ajax=1'),

(我把&amp; action = blahblah放在encodeURI里面)

答案 1 :(得分:0)

问题可以通过添加+&#39; format = ajax&#39;来解决。在网址

像:

    jQuery.ajax({
  type: 'POST',
  url: encodeURI($('form[name=cart_quantity]').attr('action')) + '&format=ajax'+ '&ajax=1', 
 data: jQuery('form[name=cart_quantity]').serialize(),
    success: function(data) {
   jQuery("#content-body").html(data); 
    //Hide_Load();
    //update_cart();

}
});
// Updating cart total

jQuery.ajax({
   type: 'POST',
url: encodeURI($('form[name=cart_quantity]').attr('action')) + '&format=ajax'+ '&show_total=1&ajax=1', 
   data: jQuery('form').serialize(),
     success: function(data) {
        jQuery('#boxcart-total').html(data); 
        //Hide_Load();
        }
    });