在qm150_submit $ .post中的ajax调用后的回调.... 我想调用另一个名为'send_email'的函数(它也有一个名为'success_callback'的回调
调用send_email但我收到此错误:
Uncaught TypeError: Property 'send_email' of object [object DOMWindow] is not a function
这是参考错误吗?我需要做些什么来设置.this
可能是什么?
函数qm150_submit()
。我不确定这与它有什么关系吗?
这是代码:
function qm150_submit($title, $name, $email, $description, $send_email) {
$.post('<?PHP print API_SUBMIT; ?>', { "title": $title, "name": $name, "email": $email, "description": $description },
function (data) { // callback function after API_SUBMIT
// Send email with a link to their collection
if ($send_email) {
// parameters for the send_email() ajax function
var subject = "subject";
var collection_id = data.collection_id; // data is json returned from the ajax above
var toEmail = $email
var message = "<?PHP print SHARE_COLLECTION;?>"+collection_id;
var fromEmail = "<?PHP print EMAIL_FROM_EMAIL; ?>";
var fromName = "<?PHP print EMAIL_FROM_NAME; ?>";
var success_callback = function (results) {
alert('send_email has returned with: '+results);
};
alert('I am now calling the send_email');
send_email(fromName,fromEmail,toEmail,subject,message,success_callback);
}
});
// missing a curly bracket ? no! note double indentation of the anonymous function (data) is a continuation of first statement
}
和send_email()的代码
function send_email(fromName,fromEmail,toEmail,subject,message,success_callback) {
alert('send_email called');
$.ajax({
type: 'post',
url: '<?PHP print API_SHARE_EMAIL;?>',
data: 'fromName=' + fromName + '&fromEmail=' + fromEmail + '&toEmail=' + toEmail + '&subject=' + subject + '&message=' + message,
dataType:'json',
success: success_callback
});
alert('send_email finished');
return true;
}
答案 0 :(得分:0)
而不是
function () {send_email(fromName,fromEmail,toEmail,subject,message,success_callback) };
只需调用该函数。
send_email(fromName,fromEmail,toEmail,subject,message,success_callback);