关于获取当前点击的a标签的自动属性的问题

时间:2022-11-26 11:44:07
点击标签触发事件:
function linkClick() {
            $(".aclick").click(function () {
                var count = $("#txtCount").val();
                count=parseInt(count);
                var bookId = $(this).attr("bookId");
                if (this.title == "减一") {
                    count -= 1;
                }
                else {
                    count += 1;
                }
                $.post("/ashx/ProcessCart.ashx", { "count": count, "action": "edit", "bookId": bookId }, function (data) {
                    if (data == "ok") {
                        $("#txtCount").val(count);
                    }
                })
                return false;
            });
        }


标签:
<a href='#none' title='减一' class="aclick" style='margin-right:2px;' ><img src="Images/bag_close.gif" width="9" height="9" border='none' style='display:inline' bookId="4939"/></a>

给这个标签添加了一个自定义属性bookId
var bookId = $(this).attr("bookId");  为什么在点击这个标签后无法获取这个标签的bookId的值。

3 个解决方案

#1


$(this) 获取的是a标签,
bookId是链接内的img属性 当然获取不到

#2



<!DOCTYPE html>
<html>
<head>
    <title></title>
    <meta charset="utf-8" />
</head>
<body>
<a href='#none' title='减一' class="aclick" style='margin-right:2px;'>
    <img src="Images/bag_close.gif" width="9" height="9" border='none' style='display:inline' bookId="4939"/>
</a>
<script src="../jquery/jquery-1.11.3.js"></script>
<script>
    function linkClick() {
        $(".aclick").click(function () {
            var count = $("#txtCount").val();
            count=parseInt(count);
            var bookId = $(this).find('img').attr("bookId");
            if (this.title == "减一") {
                count -= 1;
            }
            else {
                count += 1;
            }
            $.post("/ashx/ProcessCart.ashx", { "count": count, "action": "edit", "bookId": bookId }, function (data) {
                if (data == "ok") {
                    $("#txtCount").val(count);
                }
            })
            return false;
        });
    }
    linkClick();
</script>
</body>
</html>

你的bookId在img不是a上

#3


谢谢指正,是我粗心大意没看清楚。。。

#1


$(this) 获取的是a标签,
bookId是链接内的img属性 当然获取不到

#2



<!DOCTYPE html>
<html>
<head>
    <title></title>
    <meta charset="utf-8" />
</head>
<body>
<a href='#none' title='减一' class="aclick" style='margin-right:2px;'>
    <img src="Images/bag_close.gif" width="9" height="9" border='none' style='display:inline' bookId="4939"/>
</a>
<script src="../jquery/jquery-1.11.3.js"></script>
<script>
    function linkClick() {
        $(".aclick").click(function () {
            var count = $("#txtCount").val();
            count=parseInt(count);
            var bookId = $(this).find('img').attr("bookId");
            if (this.title == "减一") {
                count -= 1;
            }
            else {
                count += 1;
            }
            $.post("/ashx/ProcessCart.ashx", { "count": count, "action": "edit", "bookId": bookId }, function (data) {
                if (data == "ok") {
                    $("#txtCount").val(count);
                }
            })
            return false;
        });
    }
    linkClick();
</script>
</body>
</html>

你的bookId在img不是a上

#3


谢谢指正,是我粗心大意没看清楚。。。