我有一个网页,上面有链接。单击该链接,它将使用AJAX在<div>
内生成一个表。除了表格,当这个<div>
加载时,它会调用一些javascript进行播放,以便用户可以对表格中的项目进行上/下投票。我的问题是,如果用户点击同一链接重新生成<div>
,它会重新加载一个SECOND javascript,这样点击upvote箭头一次实际运行+1两次。我不知道你是否需要查看任何特定的代码,或者是否有一些通用的方法来解决这个问题,但这里有一个更清晰的文件设置图片。
mainpage.php ,链接名为“show table”
voting.js
getTable.php
*点击主页上的“显示表格”,调用 getTable.php 。
* getTable.php 调用 voting.js ,以便用户可以对项目进行投票
*再次点击“显示表格”并调用另一个 voting.js
*现在点击upvote箭头会经过+1代码的两倍。
一个人能做些什么?
答案 0 :(得分:2)
您可以在mainpage.php上包含voting.js而不是getTable.php。它将被加载一次,但getTable仍然可以使用它。
答案 1 :(得分:0)
我猜测(猜测,因为我们没有代码)你要将数据附加到div。所以不要追加它,只需写/覆盖它。
答案 2 :(得分:0)
你解释它的方式对我来说有点混乱,所以我的回答基于我认为你遇到的问题。
当用户提交+1票时,它会提交2次
你可以使用一个开关,基本上当他们点击呼叫时如果你的开关打开了,如果它没有设置为打开并运行代码
if(sitchMe == "on"){
//dont run the code
}
else{
//run it
switch = "on"
}