Magento + Ajax 404 Error



我正在编写一个模块,以在Magento中进行简单的Ajax调用,但在Console中给出404个错误

config.xml文件是

<?xml version="1.0"?>
<config>
  <modules>
    <Custom_Personalize>
      <version>0.1.0</version>
    </Custom_Personalize>
  </modules>
        <frontend>
            <routers>
                <personalize>
                    <use>standard</use>
                    <args>
                        <module>Custom_Personalize</module>
                        <frontName>personalize</frontName>
                    </args>
                </personalize>
            </routers>
            <layout>
                <updates>
                  <personalize>
                      <file>personalize.xml</file>
                  </personalize>
                </updates>
            </layout>
    </frontend>
      <admin>
        <routers>
          <personalize>
            <use>admin</use>
            <args>
              <module>Custom_Personalize</module>
              <frontName>admin_personalize</frontName>
            </args>
          </personalize>
        </routers>
      </admin>
      <layout>
          <updates>
            <personalize>
              <file>personalize.xml</file>
            </personalize>
          </updates>
        </layout>
      </adminhtml>
    </config> 

控制器文件是

    <?php
    class Custom_Personalize_AjaxController extends Mage_Core_Controller_Front_Action
    {
        public function indexAction() {
            $this->loadLayout();
            $this->renderLayout();
        } 
    }

个性化。xml是

     <?xml version="1.0"?>
      <layout>
    <personalize_ajax_index>
    <block type="personalize/personalize" name="root" output="toHtml" template="personalize/ajax.phtml" />
    </personalize_ajax_index>
</layout>

和ajax.phtml

test

和jQuery代码是

 <script type="text/javascript">
    jQuery(document).on('change', '.shapes', function() {
        console.log("hii");
        jQuery.ajax({
            url: "<?php echo $this->getUrl() ?>"+'personalize/ajax/index',
            type: "POST",
            data: "size=123456",
            success: function(data) {
                console.log(data);
                return false;
            }
        });
    });
</script>

请建议我想念什么?

谢谢

您已经提到了block 个性化/个性化,您需要在block/ntrolize.php中定义该块。.xml

您可以使用 core/template 如果您的扩展中未定义任何块如下:

<?xml version="1.0"?>
<layout>
    <personalize_ajax_index>
      <block type="core/template" name="root" output="toHtml" template="personalize/ajax.phtml" />
    </personalize_ajax_index>
</layout>

最新更新