按一个独特的按钮执行操作

时间:2014-11-22 00:35:53

标签: javascript jquery html

因此,当我开始使用JavaScript和jQuery时,我有一个独特div的问题。

在JavaScript中是否可以创建唯一的div名称然后执行操作onclick

http://jsfiddle.net/agmr2ytd/4/

示例HTML:

<div id="favoriteXBSbQG6fNlObroDG4ML2l9VRO/yNpvIFxL0Qjr6bP2A=">
    <a href="#" id="XBSbQG6fNlObroDG4ML2l9VRO/yNpvIFxL0Qjr6bP2A=" class="btn btn-danger">Me</a>
</div>
<div id="favoriteakkbN3eo8h0Q7S4ouHqMX7cU9vNLNKw3llO/PK0e9qI=">
    <a href="#" id="akkbN3eo8h0Q7S4ouHqMX7cU9vNLNKw3llO/PK0e9qI=" class="btn btn-danger">Me 2</a>
</div>

JavaScript的:

$(function() {
    $('.favorite').click(function() {
        var element = $(this);
        var verify = element.attr("id");
        alert(verify);
        $('#favorite'+verify).hide();
    });

});

当我从div中按下第一个a时,我想将id值作为alert并隐藏它。

2 个答案:

答案 0 :(得分:2)

您需要将class = favorite设置为div,然后才能正常工作:

DEMO

jQuery / javascript:

$(function() {
    $('.favorite').click(function() {
        var element = $(this);
        var verify = element.attr("id");
        alert(verify);
        var tohide = document.getElementById(verify);
        tohide.style.display = 'none';
    });

});

HTML:

<div id="favoriteXBSbQG6fNlObroDG4ML2l9VRO/yNpvIFxL0Qjr6bP2A=" class="favorite">
    <a href="#" id="XBSbQG6fNlObroDG4ML2l9VRO/yNpvIFxL0Qjr6bP2A=" class="btn btn-danger">Me</a>
</div>
<div id="favoriteakkbN3eo8h0Q7S4ouHqMX7cU9vNLNKw3llO/PK0e9qI="  class="favorite">
    <a href="#" id="akkbN3eo8h0Q7S4ouHqMX7cU9vNLNKw3llO/PK0e9qI=" class="btn btn-danger">Me 2</a>
</div>

答案 1 :(得分:1)

您的选择器错误,因为属性^=表示“属性值以”开头:

$(function() {
    $('[id^=favorite] a').click(function() {
        var element = $(this);
        var verify = element.attr("id");
        alert(verify);
        $('#favorite'+verify.replace(/([ #;?%&,.+*~\':"!^$[\]()=>|\/@])/g,'\\$1')).hide();
    });
});

Example Fiddle&lt; -

您的ID必须转发,used this answer才能获得解决方案。