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