代码之家  ›  专栏  ›  技术社区  ›  Khurram W. Malik

在magento 1.9中,从产品详细信息页面上的自定义按钮调用Ajax不起作用

  •  0
  • Khurram W. Malik  · 技术社区  · 7 年前

    在产品详细信息页面上,我在“添加到购物车”按钮旁边有一个自定义按钮。下面是如何在app/design/frontend/base/default/layout中加载自定义按钮/我的模块.xml.

    <layout version="0.1.0">
        <catalog_product_view>
            <reference name="product.info.options.wrapper.bottom">
              <block type="core/template" name="bottomblock" before="-" template="yotpo/bottom.phtml">
                  <block type="company/myModule" name="product.myproduct.config" as="product.myproduct.config" before="-" template="myModule/my-view.phtml" />
              </block>
            </reference>
        </catalog_product_view>
    </layout
    
    

    以下是底部.phtml

    <?php
    $this->getChildHtml('product.myproduct.config', true)
    ?>
    

    以及我的内容-查看TML

    
    <button id="myButton">Make ajax call</button>
    
    <script type="text/javascript">
    
        $j('#myButton').click(function() {
                $j.ajax({
                  url: "<?php echo Mage::getUrl('myModule/ajax/index') ?>",
                  type: "POST",
                  data: { myID: 1 },
                  showLoader: true,
                  cache: false,
                  success: function(response) {
                    alert(response)
                  }
                });
        });
    </script>
    

    我的控制器放在app/code/community/company/myModule/controllers上的内容/AjaxController.php

    
    <?php
    class Company_MyModule_AjaxController extends Mage_Core_Controller_Front_Action {
    
        public function indexAction() {
            return '123';
        }
    }
    
    
    

    在我的模块.xml如果我试图将我的块包装在标记内,我的按钮将停止加载。 如果我尝试在没有该标记的情况下进行ajax调用,在url处会出现404notfound错误 http://localhost/myModule/ajax/index/

    0 回复  |  直到 7 年前