我试图找出为什么我的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时,网址看起来像这样
mysite.com/registry/index.php/registry/view/addselected/?qty[2]=5
但是,我的 ItemController 没有对它做任何事情。
答案 0 :(得分:1)
试试你的javascript
$this->getUrl('*/registry/addselected')
代替$this->getUrl('*/*/addselected')
让我知道任何问题都会发生。希望有所帮助:)