javascript - 点击DIV或A标签激活JS功能

标签 javascript ajax

我试图通过 ajax 将一些数据传递到 php 文件,但前提是单击一个元素。

如何将每个 A 元素附加到相应的 JS 函数,并且仅单击一次?

<a class="rating star1">1</a><br />
<a class="rating star2">2</a><br />
<a class="rating star3">3</a><br />

<script>
//CANT WORK OUT HOW TO ACTIVATE THIS FUNCTION ONLY IF .star1 IS CLICKED
function() { 
    $.post('/rate.php', {
    rating : '1', 
    page_id : '1234'
}, function(){
    });
}

//CANT WORK OUT HOW TO ACTIVATE THIS FUNCTION ONLY IF .star2 IS CLICKED
function() { 
    $.post('/rate.php', {
    rating : '2', 
    page_id : '1234'
}, function(){
    });
}

//CANT WORK OUT HOW TO ACTIVATE THIS FUNCTION ONLY IF .star3 IS CLICKED
function() { 
    $.post('/rate.php', {
    rating : '3', 
    page_id : '1234'
}, function(){
    });
}
</script>

最佳答案

向具有 rating 类的所有元素添加单击事件处理程序。如果将点击事件处理程序绑定(bind)到 rating,则可以消除一些重复的代码。

$(".rating").click(function(){
    $.post("/rate.php", {
        rating: $(this).html(), //will grab the rating from the html of clicked <a/>
        page_id: "1234"
    },function(){});
});

关于javascript - 点击DIV或A标签激活JS功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18977009/

相关文章:

javascript - 我可以使用 JavaScript 检测 HTML 中播放的任何类型的视频,然后使用函数暂停所有媒体吗?

ajax - Spring Security Ajax 登录

php - 防止直接访问由 ajax 函数调用的文件

javascript - javascript 上的基本 if/else 不起作用

php - 如何在 codeigniter 中将数据从 post 传递到 ajax

javascript - 我可以使用 jQuery 重新加载 div 吗?

javascript - 按钮单击在 jquery 中不起作用

php - 为什么 Google 广告没有显示在我的 WordPress 网站的主页上?

javascript - 如何在 JavaScript 中的一个请求中处理多个顺序的 JSON 响应,因为它们到达时无需等待最后一次更新?

javascript - 复选框仅在搜索后第二次单击后才有效