Javascript Magento adminhtml:“文件”;sendMail";这不是一个函数

Javascript Magento adminhtml:“文件”;sendMail";这不是一个函数,javascript,php,magento,Javascript,Php,Magento,我正在为Magento开发一个真正定制的管理页面(我知道我有点脱离了开发Magento扩展的常规方式)。 我有一个名为sendMail的函数,当单击一个按钮时,它调用一个发送邮件的控制器。第一次运行时一切正常(因此我知道这不是一个路由问题,而是一个javascript问题),但从第二次运行时,我得到了错误uncaughttypeerror:sendMail不是一个函数 这是我的密码: 按钮块(通过javascript添加到页面) 你知道为什么这段代码只在第一次运行吗?我的评论解决了这个问题,我将

我正在为Magento开发一个真正定制的管理页面(我知道我有点脱离了开发Magento扩展的常规方式)。 我有一个名为
sendMail
的函数,当单击一个按钮时,它调用一个发送邮件的
控制器。第一次运行时一切正常(因此我知道这不是一个路由问题,而是一个javascript问题),但从第二次运行时,我得到了错误
uncaughttypeerror:sendMail不是一个函数

这是我的密码:

按钮块(通过javascript添加到页面)


你知道为什么这段代码只在第一次运行吗?

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


只是一个猜测,但是:当您尝试在sendMail函数中将“sendMail”变量更改为其他变量时,它是否有帮助


事实上,我认为您可以使用局部变量的名称,因为局部名称应该只在函数内部可用,并且在保留块时从堆栈中删除。也许有人可以解释一下?

只是一个猜测,但是:当您尝试在sendMail函数中将“sendMail”变量更改为其他变量时,它会有所帮助吗?哦,您是对的,更改“sendMail”变量的名称会使它起作用。我并不是在寻找这样的错误。非常感谢你!不客气。我自己也很惊讶,但我知道它是固定的,很好!欢迎您接受答案作为您的解决方案。
"<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();
}