0

ItemController が正常に動作しない理由を突き止めようとしています。カスタム拡張機能とカスタム .phtml ファイルを作成しました。404 エラーが発生する理由を理解しようとしています。

カスタムview.phtmlファイルの関連コードは次のとおりです

<script type="text/javascript">
//<!CDATA[
        var registryItemsForm = new Validation($('registry-items'));
        var registryProductsCheckFlag = false;

        function addSelectedGItemsToCart() {
            var url = '<?php echo $this->getUrl('*/*/addselected'); ?>';
            var cels = new Array();
            $$('.items-checkbox').each(function(el){
                if( $(el).checked ){
                    cels.push($(el).value);
                }
            });
            var separator = (url.indexOf('?') >= 0) ? '&' : '?';
            $$('#registry-items .qty').each(
            function (input, index) {
                for(var i=0; i<cels.length; i++){
                    if(input.name=='qty['+cels[i]+']'){
                        url += separator + input.name + '=' + encodeURIComponent(input.value);
                        separator = '&';
                    }
                }            
            }
        );
        setLocation(url);
        } 

        //]]>
        </script>



<div class="buttons-set">
    <button type="button" title="<?php echo $this->__('Add Selected to Cart') ?>" onclick="addSelectedGItemsToCart()" class="button btn-add"><span><span><?php echo $this->__('Add Selected to Cart') ?></span></span></button>
</div>

404を取得するとURLが次のようになるため、これは機能しているようです

mysite.com/registry/index.php/registry/view/addselected/?qty[2]=5

ただし、私のItemControllerはそれに対して何もしていません。

4

1 に答える 1

1

あなたのjavascriptで試してください

$this->getUrl('*/registry/addselected')それ以外の$this->getUrl('*/*/addselected')

問題が発生した場合はお知らせください。希望の助け:)

于 2013-09-06T04:20:13.557 に答える