javascript - 像堆栈溢出一样跨越 upvote 插件时显示错误

标签 javascript php jquery

我有一个 jQuery up vote 插件。除了错误处理,一切都工作正常。我的投票插件在 foreach 循环中。像下面这样

  if($RES['counter'] === '1'){
     echo '
             <td>
               <div  data-id='.$id.' class="upvote upvote-serverfault">
                <a style="cursor:pointer;" class="upvote upvote-on" title="This idea is helpful"></a>
                <span class="count">'.$counter.'</span>
                <a class="downvote"></a>
                <span id='.$index.'><span class="votingFeedback"></span>
              </div>
          </td>';  
        }
        else 
            if($RES['counter'] === '-1'){
        echo '
          <td>
            <div  data-id='.$id.' class="upvote upvote-serverfault">
                <a style="cursor:pointer;" class="upvote upvote-down" title="This idea is helpful"></a>
                <span class="count">'.$counter.'</span>
                <a class="downvote downvote-on"></a>
                <span id='.$index.'><span class="votingFeedback"></span>  
            </div>
          </td>';
        }

问题是当用户试图跨越我的投票系统时它会抛出一个错误。错误检查是在我的 PHP 文件中完成的并且它正在工作但是当我试图在屏幕上显示错误而不是在屏幕上显示消息时特定主题是否显示在所有主题 id 上

enter image description here

我试图做一些类似堆栈溢出的事情。如果你试图跨越赞成票或反对票,它会抛出错误,但它似乎比我想象的要难

我对 php 文件的 ajax 调用

<script>
var callback = function(data) {
    $.ajax({
        url: 'voting.php',
        type: 'post',
        data: { id: data.id, up: data.upvoted, down: data.downvoted, star: data.starred },
        success: function(data) {      
        $(".votingFeedback").html(data);
    }
    });
};
$('.upvote').upvote({callback: callback});

 </script>

最佳答案

当您从 ajax 请求获得响应时,您选择了页面上的所有投票反馈元素,因为您使用的是类选择器。这是用 votingFeedback

类更新所有范围

您需要使用对要更新的元素唯一的选择器。您已经有一个带有 id 的容器 div。将其用作选择器的一部分。

$("[data-id='"+ data.id + "'] .votingFeedback").html(数据);

但是您还需要重命名成功函数的参数,因为您定义了两次 data。这将意味着 data.id 不再存在。将其重命名为 response 或重命名外部函数的参数。

关于javascript - 像堆栈溢出一样跨越 upvote 插件时显示错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49887535/

相关文章:

php - mySQL 仅选择大于零的列

javascript - 使用 Django 构建 Ajax 自动分页器

javascript - 如何通过Ajax将php文件返回的字符串存储到Javascript变量

php - 我想在主页 WordPress 中显示自定义分类法列表

php - 在具有相同 Controller 名称的模块化结构化应用程序中实现 Zend_Acl

javascript - Mobile Safari 视差滚动不起作用

javascript - 检测用户何时按下第一个或最后一个表单元素上的选项卡(在 div 中)

javascript - 如何延迟加载 HTML block (避免大 DOM 大小),同时让网络爬虫注意到延迟内容?

javascript - 在 C#.net Winform 应用程序中获取和设置 CKEditor HTML

javascript - 当球与矩形碰撞时如何改变 Angular ?