【发布时间】:2015-05-10 15:05:57
【问题描述】:
我正在制作一个投票系统。用户单击这些按钮(div)后,将调用 ajax 将数据传递到另一个页面,执行 SQL 以插入会话 id、投票值、投票 id 并显示新的总数
这是我的 ajax
$('.like').on('click', function(){
var voteclass=2;
var vote_id=$(this).parent().attr("id");
var poststr="voteclass="+voteclass+"&voteteacher="+vote_teacher;
$.ajax({
url:"insert.php",
cache:0,
data:poststr,
success:function(result){
$('#'vote_id).html(result);} }); });
在 ajax 之后,insert.php 执行 SQL 并显示与 fontpage 相同的投票 div 内容但具有新的总值的结果。
我的问题是我不能再次投票刷新整个页面。这是否意味着 innerHTML 无法在外部(我不知道术语是什么)页面的 head 元素中加载脚本?我该如何解决?
【问题讨论】:
-
两个问题:你使用'bind'而不是'on'有什么原因吗?并使用本机javascript: document.getElementById(...).innerHtml = ... 而不是 $('#'+vote_id).html(result)?
-
感谢回复!! Jason Q1:我已将其更改为“on” Q2:我尝试了您提到的内容,但单击 2 次后仍然无法正常工作
-
我意识到为什么我只能点击两次是 .html() 会去掉我原来的 html 有什么办法可以避免吗?
-
你可以这样做:$('#'+vote_id).append(result)
-
这里是我所说的一个 jsfiddle:jsfiddle.net/jasonwilczak/rtmo4093/33
标签: javascript php jquery ajax innerhtml