0

我正在寻求你的帮助。我想在 Magento 中使用 Ajax 更改头像图片。我的表单没有 AJAX,它是默认表单action="<?php echo $this->getUrl('customer/account/editProfile') ?>"

这是我的代码:

     <form id="avatarform" enctype="multipart/form-data" method="post">
         <?php echo $this->getBlockHtml('formkey')?>                    
            <input type="file" name="avatar"/>
            <a><button type="submit" class="general-btn"><span><?php echo $this->__('Save Profile') ?></span></button></a>  
     </form>

我现在的 JS 函数:

jQuery("#avatarform").submit(function(){
            //alert ("test");   
            //jQuery.post('<?php echo $this->getUrl('customer/account/editProfile') ?>');       
            //return false;

            url = '<?php echo $this->getUrl('customer/account/editProfile') ?>';             
            new Ajax.Request(url, {
                parameters: {isAjax: 1, method: 'POST'},
                onSuccess: function(transport) {
                }
            }); 
        }); 

你对我有什么建议吗?

提前致谢。

编辑:使用这个新代码,我可以获得成功警报。

jQuery('#avatar').live('change', function() {   
            //alert('test');
            var boxval = jQuery("#avatar").val();
            var dataString = 'avatar='+ boxval;
            //document.avatarform3.submit();        
            jQuery.ajax({
                type: "POST",
                data: dataString,
                cache: false,
                url: "http://localhost/magento-sample/index.php/customer/account/editProfile",
                success: function(html) {
                alert('sucess');                                        
                }
            });
        });

但表格不提交。也许我错过了添加正确的数据/参数,但是为什么在正常请求模式下我需要在 Ajax 中添加一些参数?我怎样才能找到要添加的正确参数?

谢谢。

4

1 回答 1

0

您如何读取表单提交的参数,使用 post 方法时需要读取请求参数。

于 2015-01-19T13:30:24.067 回答