gpt4 book ai didi

投票赞成/反对系统的 Javascript 错误

转载 作者:行者123 更新时间:2023-11-30 10:01:52 25 4
gpt4 key购买 nike

我正在尝试采用一个脚本来使用一个教程中的 ajax 和 jquery 进行上下投票。 (我认为) 的问题是,在教程中,脚本与 jquery-2.1.1 一起使用,但我使用 jquery-1.10.1这是 HTML 部分

<div id="links-'.$row["image_id"].'">
<input type="hidden" id="votes-'.$row["image_id"].'" value="'.$row["votes"].'">
<input type="hidden" id="vote_rank_status-'.$row["image_id"].'" value="'.$vote_rank.'">
<div class="btn-votes">
<input type="button" title="Up" class="up" onClick="addVote('.$row['image_id'].',"1")"'.$up.' />
<div class="label-votes">'.$row["votes"].'</div>
<input type="button" title="Down" class="down" onClick="addVote('.$row['image_id'].',"-1")"'.$down.'/>
</div>
</div>

这是 script.js 应该将点击的按钮传递给 add_vote.php

function addVote(image_id,vote_rank) {
$.ajax({
url: "add_vote.php",
data:'image_id='+image_id+'&vote_rank='+vote_rank,
type: "POST",
beforeSend: function() {
$('#links-' + image_id + ' .pull-right').html("<img src='LoaderIcon.gif' />");
},
success: function(vote_rank_status){
var votes = parseInt($('#votes-' + image_id).val());
var vote_rank_status; // = parseInt($('#vote_rank_status-' + id).val());
switch(vote_rank) {
case "1":
votes = votes + 1;
// vote_rank_status = vote_rank_status + 1;
break;
case "-1":
votes = votes-1;
//vote_rank_status = vote_rank_status - 1;
break;
}
$('#votes-' + image_id).val(votes);
$('#vote_rank_status-' + image_id).val(vote_rank_status);

var up, down;

if (vote_rank_status == 1) {
up = "disabled";
down = "enabled";
}

if (vote_rank_status == -1) {
up = "enabled";
down = "disabled";
}

var vote_button_html = '<input type="button" title="Up" id="up" onClick="addVote(' + image_id + ',\'1\')" ' + up + ' /><div class="label-votes">' + votes + '</div><input type="button" title="Down" id="down" onClick="addVote(' + image_id + ',\'-1\')" ' + down + ' />';
$('#links-' + image_id + ' .pull-right').html(vote_button_html);
}
});
}

当我点击投票赞成或反对时,页面上没有任何反应。没有添加新投票也没有插入数据库。这是我点击按钮时在 firefox 控制台中看到的内容

SyntaxError: expected expression, got end of script

还有这个,但我不确定是否与此脚本相关。显示错误在文件 jquery-1.10.1.min.js

Empty string passed to getElementById().

最佳答案

您的 onclick 函数似乎有语法错误。

onClick="addVote('.$row['image_id'].',"1")"

如您所见,您在双引号内使用了双引号(围绕数字 1)。尝试:

onClick="addVote('.$row['image_id'].',\"1\")"

关于投票赞成/反对系统的 Javascript 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31159179/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com