我有一個HTML鏈接,這裏是(後PHP解釋):問題實現AJAX後
<a href="javascript:void(0)" onclick="vote_comment(28, 1);" class="vote-arrow">
<img id="up-arrow-pic-comment-28" src="http://localhost/wordpress/wp-content/themes/backyard- cures/images/up_arrow_grey.png" alt="vote up" />
</a>
這是它被調用函數:
function vote_comment(comment_id, direction) {
$.post('http://localhost/wordpress/wp-content/themes/backyard-cures/backyard_funcs.php',
{voteType: direction, postId: comment_id, type: 'comment'},
'updateIcon(vote_count, direction, comment_id)',
'json');
}
這裏是backyard_funcs.php :
if (isset($_POST['voteType'], $_POST['postId']) && is_user_logged_in()) {
if($_POST['type'] == 'comment') {
if (!get_user_meta(get_current_user_id(),'byc_comment_votes',true)) {
add_user_meta(get_current_user_id(),'byc_comment_votes',array($_POST['postId'] => $_POST['voteType']),true)
echo json_encode(array('vote_count' => $_POST['voteType'], 'direction' => $_POST['voteType'], 'comment_id' => $_POST['postId']));
}
else {
echo json_encode(array('vote_count' => $_POST['voteType'], 'direction' => $_POST['voteType'], 'comment_id' => $_POST['postId']));
//$old_vote=get_user_meta(get_current_user_id(),'byc_comment_votes['.$_POST[postId].']',true);
}
}
} else {
// bad request/hack attempt
echo 2;
}
我知道updateIcon功能(這是應該的崗位上取得成功被稱爲)沒有被調用編輯。我一直在使用chrome調試器。我知道執行進入vote_comment函數,並從那裏執行死亡(不知道爲什麼)。我沒有收到任何控制檯錯誤。
我意識到這個問題可能過於簡單或不清楚。我提前道歉,我是這個新手(網站開發)。請讓我知道是否需要任何額外的信息。提前致謝。
如果您查看網絡選項卡,它是否顯示正在發出的請求?如果是這樣,結果如何? – 2014-09-04 21:48:47
您應該從'$ .post'網址中移除'http:// localhost',您可能會遇到跨域問題。 – jeroen 2014-09-04 21:48:55
在成功函數參數中,你有一個字符串''updateIcon(vote_count,direction,comment_id)'',而不是函數定義,比如'function(data){... updateIcon(vote_count,direction,comment_id); }' – developerwjk 2014-09-04 21:52:22