Неопределенная ошибка при использовании атрибута данных с jquery - PullRequest
0 голосов
/ 19 февраля 2012

Я использую jquery для создания системы комментариев и неприязни в комментариях, поэтому мне нужно манипулировать jquery. Для этого я использую атрибут данных, но получаю неопределенную ошибку с этим кодом

Я пытался это часами и не могу предупредить о значении атрибута данных.

Мой код JavaScript:

$('.unlike_link_comment').live("click", function(e){
    e.preventDefault();
    var likescount = jQuery(this).attr("data-likes");
    var newlikescount = parseInt(likescount) - 1;
    var commentid = jQuery(this).attr("data-id");
    var dislikescount = jQuery('#dislike_link_comment_4').data("dislikes");
    alert(dislikescount);
    $.ajax({
    url : 'alter_comments.php?action=unlike&comment_id='+commentid,
    beforeSend: function( xhr ) {
    xhr.overrideMimeType( 'text/plain; charset=UTF-8' );
  },
    success: function( data ) {
    $('#emptydiv_'+commentid).html(data);
    $('#like_count_'+commentid).html('<font color="red">'+newlikescount+' Likes</font>');
    $('#comment_control_'+commentid).html("<a data-likes='"+newlikescount+"' data-id='"+commentid+"' href='' class='like_link_comment'>Like</a> ");  
  }
    });    
    });

Мой HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
        <title></title>
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
</head>
<body>
<div class='stbody' id='stbody_4'>
<div class='stimg'>
<img src='uploads/profile_pics_small/wood_texture_by_pabloalvin-d1igijr.jpg' /></img>
</div>
<div class="unlike_link_comment" style="width: 100px; height: 50px; margin: 0 auto; background-color:yellow">click me!</div>
<div class='sttext'><font color='black'>
sdasdasd
<div class='sttime'>By nicknick</div></font>
<br><br><font color='red'><p id='like_count_4' class='like_count'>0 Likes</p> <p id='dislike_count_4' class='dislike_count'>2 Dislikes</font></p> <div id='comment_control_4' class='commentcontrols'> <a data-likes='0' data-id='4' class='like_link_comment' id='like_link_comment_4' href=''>Like</a><a data-dislikes='2' data-id='4' class='dislike_link_comment' id='dislike_link_comment_4' href=''>Dislike</a></div> </div> </div>  <div id='emptydiv_4'> </div> </body> </html>

1 Ответ

0 голосов
/ 19 февраля 2012

Я сам не очень хорош в javascript, но когда я запустил его через линт (javascriptlint.com), он выдал следующую ошибку:

$('.unlike_link_comment').live("click", function(e){
    e.preventDefault();
    var likescount = jQuery(this).attr("data-likes");
    var newlikescount = parseInt(likescount) - 1;

=========================================== ^ предупреждение lint: parseInt отсутствует параметр radix

может в этом проблема?

...