繁体   English   中英

如何将javascript附加到字体真棒图标

[英]How to attach javascript to a font awesome icon

我在我的HTML中有一个fontawesome图标作为按钮,我想使用javascript并触发它AJAX风格

<a href="#"><i id="heart" class="jam jam-heart-f"></i> Like</a>

这是尝试javascript触发它 - 但我没有得到任何错误跟进。 我尝试将类似的尝试发布到类似.php的PHP页面,以将链接添加到数据库。

$(document).ready(function()
{

$('body').on("click",'#heart',function()
{
    var videoId = "<?php echo $video_id; ?>";


    var A=$(this).attr("id");
    var B=A.split("like");
    var messageID=B[1];
    var C=parseInt($("#likeCount"+messageID).html());


       $.ajax({
    method: 'POST',
    url: 'like.php',
    data: {videoId: videoId},
    cache: false,
        success: function(result){
            likeInfo = JSON.parse(result);
                    $("#likeCount1").html("Likes:" + likeInfo.likeCount);

            //document.getElementById("likeCount1").value = likeInfo.likeCount;
            //$("#likeCount1").html(likeCount);
        }

        }); 



    }


});

我不认为#heart似乎是在JS中用id =“heart”用字体真棒图标触发的。 任何想法如何我可以一起装配

您的代码正确触发了请求后请求,但您没有正确关闭函数和作用域。

我在这里试了一下: http//jsfiddle.net/4cohrz5p/

和代码来保持stackoverflow愉快:

$(document).ready(function() {

      $('body').on("click", '#heart', function() {
          var videoId = "<?php echo $video_id; ?>";


          var A = $(this).attr("id");
          var B = A.split("like");
          var messageID = B[1];
          var C = parseInt($("#likeCount" + messageID).html());


          $.ajax({
            method: 'POST',
            url: 'like.php',
            data: {
              videoId: videoId
            },
            cache: false,
            success: function(result) {
              likeInfo = JSON.parse(result);
              $("#likeCount1").html("Likes:" + likeInfo.likeCount);

              //document.getElementById("likeCount1").value = likeInfo.likeCount;
              //$("#likeCount1").html(likeCount);
            }
          });
      });
});

此外,javascript控制台显示代码的Uncaught SyntaxError: missing ) after argument list 当您单击心脏以查看传出请求时,可以打开网络选项卡,并可以检查它们以查看它们是否发送了正确的数据(以及响应!)。

在运行代码之前,任何像样的js编辑器都会显示此错误。 尝试VS代码 自由轻巧,整体非常棒。

你忘了为$('body')添加右括号和分号.on ...声明

尝试这个:

$(document).ready(function()
{

    $('body').on("click",'#heart',function()
    {
        var videoId = "<?php echo $video_id; ?>";


        var A=$(this).attr("id");
        var B=A.split("like");
        var messageID=B[1];
        var C=parseInt($("#likeCount"+messageID).html());


           $.ajax({
        method: 'POST',
        url: 'like.php',
        data: {videoId: videoId},
        cache: false,
            success: function(result){
                likeInfo = JSON.parse(result);
                        $("#likeCount1").html("Likes:" + likeInfo.likeCount);

            //document.getElementById("likeCount1").value = likeInfo.likeCount;
            //$("#likeCount1").html(likeCount);
            }
        }); 
    });
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM