Magento adminhtml:"sendMail”;不是函数

Magento adminhtml: "sendMail" is not a function

本文关键字:函数 sendMail Magento quot adminhtml      更新时间:2023-09-26

我正在为Magento开发一个真正自定义的管理页面(我知道我有点偏离了开发Magento扩展的常规方式)。我有一个名为sendMail的函数,当单击按钮时,它会调用一个发送邮件的controller。第一次运行时一切都很好(所以我知道这不是路由问题,而是javascript问题),但从第二次运行时,我得到了错误Uncaught TypeError: sendMail is not a function

这是我的代码:

按钮(这是通过javascript添加到页面中的)

"<td><button onclick='sendMail("+"'"<?php echo Mage::helper('adminhtml')->getUrl('adminhtml/sendBrochure/send/'); ?>"+"?isAjax=true"+"&id="+resultLog[i].id+"'")'>Send brochure</button></td>";

发送邮件功能

function sendMail(link){
    sendMailPath = link;
    sendMail = new XMLHttpRequest();
    sendMail.open("get", sendMailPath, true);
    sendMail.setRequestHeader("Content-type","application/x-www-form-urlencoded");
    sendMail.send();
}

你知道为什么这个代码第一次工作吗?

由于我的评论解决了这个问题,我将把它作为一个答案发布:

只是猜测,但是:当您尝试将sendMail函数中的"sendMail"变量更改为不同的变量时,这有帮助吗?

事实上,我认为可以随心所欲地使用带有名称的局部变量,因为局部名称应该只在函数内部可用,并且在块离开时从堆栈中删除。也许有人能解释?