我正在为我的家人开发一个小型社区风格的网站。它主要是社交网络的一个小版本,这样我的侄女和侄子就可以互相取乐了。
我已经设置了“freinding”功能,它工作得很好。但是,当我响应朋友的请求时,会触发一个额外的ajax函数。我的AJAX功能可以工作并更新数据库,但无法发送电子邮件通知,我认为这是由于启动了额外的AJAX功能。
提交响应(接受或忽略)后,FireBug显示我的AJAX函数已临时移动-我看到一个302临时移动错误。就在它下面的另一个GET请求为我登录的用户触发。FireBug中的标题如下所示:
Cache-Control no-cache, must-revalidate, max-age=0
Connection Keep-Alive
Content-Type text/html; charset=UTF-8
Date Tue, 27 Nov 2012 20:51:46 GMT
Expires Wed, 11 Jan 1984 05:00:00 GMT
Keep-Alive timeout=10, max=29
Last-Modified Tue, 27 Nov 2012 20:51:46 GMT
Pragma no-cache
Server Apache
Transfer-Encoding chunked
Vary Accept-Encoding
X-Pingback http://obeliskwebdesign.com/sandbox/family-site/xmlrpc.php
我不知道这个附加功能是什么,也不知道它为什么会启动。我在网站上还有其他几个AJAX功能,它们工作得很好,之后没有其他功能启动,所以我在这里有点不知所措。
如果有人能解释这可能是什么原因,或者如果这可能导致我的电子邮件通知无法发出,请让我知道。谢谢
----编辑---------------------------------------------------------
我的AJAX功能:
//ajax for friend response submission
jQuery(\'.friend-request-response\').click(function(event){
event.preventDefault();
var id = $(this).attr(\'rel\');
var form = jQuery( \'form#friend-response-form-\'+id ),
friend_request_response_nonce = form.find( \'input[name="friend_request_response_nonce"]\' ).val(),
request_id = form.find( \'input[name="request_id"]\' ).val(),
userid = form.find( \'input[name="userid"]\' ).val(),
friend_id = form.find( \'input[name="friend_id"]\' ).val(),
status = form.find( \'input[name="status"]\' ).val();
jQuery(\'div#request-\' + id + \'ul\').hide(\'slow\');
jQuery.post(
UiAjax.ajaxurl,
{
action : \'friend_request_response_action\',
friend_request_response_nonce : friend_request_response_nonce,
//other parameters
request_id : request_id,
userid : userid,
friend_id : friend_id,
status : status
},
function( response, data ) {
var new_status = ucFirst( status );
jQuery(\'div#request-\' + id).html(\'<p>\' + new_status + \'</p>\').show(\'slow\');
}
);
return false;
});