javascript - Php 使用 JQUERY AJAX 的相似与不同

标签 javascript php jquery ajax

我对我的帖子有一个疑问,比如和不像。问题是当我单击 .like_button 时 <span id='you"+New_ID+"'><a href='#'>You</a> like this.</span>不显示。

我仍然与浏览器开发人员控制台进行检查。但是当我点击“赞”按钮“赞”按钮会改变,但是 <span id='you"+New_ID+"'><a href='#'>You</a>, </span>没有显示。但如果我刷新页面<span id='you"+New_ID+"'><a href='#'>You</a>, </span>会来的。

有人可以帮我吗?

我将此代码用于 LIKE 和 UNLIKE :

AJAX JQUERY:

$('.like_button').die('click').live("click", function () {

    var KEY = parseInt($(this).attr("data"));
    var ID = $(this).attr("id");
    if (KEY == '1') {
        var sid = ID.split("likes");
    } else {
        var sid = ID.split("like");
    }


    var New_ID = sid[1];
    var REL = $(this).attr("rel");
    var URL = $.base_url + 'post_like_ajax.php';
    var dataString = 'post_id=' + New_ID + '&rel=' + REL;
    $.ajax({
        type: "POST",
        url: URL,
        data: dataString,
        cache: false,
        success: function (html) {
            if (html) {
                if (REL == 'Like') {
                    $("#elikes" + New_ID).show('fast').prepend("<span id='you" + New_ID + "'><a href='#'>You</a> like this.</span>");
                    $("#likes" + New_ID).prepend("<span id='you" + New_ID + "'><a href='#'>You</a>, </span>");
                    $('#' + ID).html('Unlike').attr('rel', 'Unlike').attr('title', 'Unlike');
                } else {
                    $("#elikes" + New_ID).hide('slow');
                    $("#you" + New_ID).remove();
                    $('#' + ID).attr('rel', 'Like').attr('title', 'Like').html('Like');
                }
            }

        }
    });

    return false;
});

PHP 代码:

<?php 
if($login)
{
?>
<a href='#' class='like like_button icontext' id='like<?php echo $post_id;?>' title='<?php echo $like_status;?>' rel='<?php echo $like_status;?>' data=''><?php echo $like_status;?></a> 
<a href='#' class='commentopen commentopen_button icontext' id='<?php echo $post_id;?>' rel='<?php echo $post_id;?>' title='Comment'>Yorum yap </a> 
<?php if($uid != $post_id) { ?>

<?php } } else { ?>
<a href='<?php echo $index_url; ?>' class='like icontext' >Like</a> 
<a href='<?php echo $index_url; ?>' class='commentopen icontext'  title='Comment'>Comment</a>
<a href='<?php echo $index_url; ?>' class='share icontext'  title='Share'>Share</a>     
<?php   
}
?>


<?php if($post_like_count>0) 
{ 
$likesuserdata=$POLL->post_Like_Users($post_id);
if($likesuserdata)
{
echo '<div class="likes" id="likes'.$post_id.'">';
$i=1;
$j=count($likesuserdata);
foreach($likesuserdata as $likesdata)
{
$you="likeuser".$post_id;
$likeusername=$likesdata['username'];
if($likeusername == $session_username)
{
$likeusername='You';
$you="you".$post_id;
}

echo '<a href="#" id="'.$you.'">'.$Wall->UserFullName($likeusername).'</a>';
if($j!=$i)
{
echo ', ';
}
$i=$i+1;
}

if($post_like_count>3)
{
$post_like_count=$post_like_count-3;
echo ' and <span id="like_count'.$post_id.'" class="numcount">'.$post_like_count.'</span> others like this.'; 
}
else
{
echo ' like this.'; 
}

echo '</div>';
}
}
else
{
echo '<div class="likes" id="elikes'.$post_id.'" style="display:none"></div>';
}
?>

post_like_ajax.php

<?php 
include_once 'includes.php';

if(isSet($_POST['post_id']) && isSet($_POST['rel']))
{
$haber_id=$_POST['post_id'];
$rel=$_POST['rel'];
if($rel=='Like')
{
$cdata=$POLL->POST_Like($post_id,$uid); 
}
else
{
$cdata=$POLL->POST_Unlike($post_id,$uid);   
}
echo $cdata;
}
?>

最佳答案

我认为您忘记了显示要在其中添加的 div,因为在开始时您添加了 display:none, echo '<div class="likes" id="elikes'.$post_id.'" style="display:none"></div>';

尝试更改此行:

$("#likes" + New_ID).prepend("<span id='you" + New_ID + "'><a href='#'>You</a>, </span>");

对此:

$("#likes" + New_ID).show().prepend("<span id='you" + New_ID + "'><a href='#'>You</a>, </span>");

关于javascript - Php 使用 JQUERY AJAX 的相似与不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26705251/

相关文章:

php - 将嵌入式 C 函数转换为 PHP 函数

php - 将 CSS 类动态分配给另一个类

java - Volley的JsonObjectRequest给出“org.json.JSONException:值<br类型java.lang.String的值不能转换为JSONObject”异常

javascript - 改变滑动 div 的方式和他们的事件调用者

jquery $.post函数调用顺序

javascript - 如何单击超链接内的文本以便拖动并突出显示它?

javascript - 如何检查输入字段仅包含数字或特殊字符

CouchDB 的 Javascript 列表缩减器

javascript - Coldfusion Ajax 多文件上传 - CFFile 覆盖 ServerFile

javascript - "Failed - Network Error"尝试使用 'download' 属性在 HTML5 中提供下载时