jQuery构成属性没有获得价值

时间:2012-10-04 14:59:30

标签: jquery custom-attributes attr

嘿所有我想要获得所点击的自定义单选按钮的价值。

这是按钮的js:

$("#df-opt0,#df-opt1,#df-opt2,#df-opt3,#df-opt4").click(function (input) {
    $('#df-opt0').css("background-image", "url(img/radiobutton-OFF.png)");
    $('#df-opt1').css("background-image", "url(img/radiobutton-OFF.png)");
    $('#df-opt2').css("background-image", "url(img/radiobutton-OFF.png)");
    $('#df-opt3').css("background-image", "url(img/radiobutton-OFF.png)");
    $('#df-opt4').css("background-image", "url(img/radiobutton-OFF.png)");
    //alert($(this).attr('id'));
    $('#' + $(this).attr('id')).css("background-image", "url(img/radiobutton-ON.png)");
    //globalRadioSelected = $(this).attr('id');

    fValue =  $(input).attr("store-id");
    alert('the ID :'+fValue);
});

这是HTML:

<div id="df-opt0" store-id="100"></div>
<div id="df-opt1" store-id="200"></div>
<div id="df-opt2" store-id="300"></div>
<div id="df-opt3" store-id="400"></div>
<div id="df-opt4" store-id="500"></div>
<div id="df-opt4txt" store-id="600">
    <input type="text" id="df-opt4txt-txt" style="width: 130px;" class="formBoxes">
</div>

当我点击其中任何一个时,我得到的是: ID:未定义

我缺少什么?

2 个答案:

答案 0 :(得分:1)

fValue = $(this).attr("store-id");不是fValue = $(input).attr("store-id");

传递给点击处理函数的参数是click事件本身,它显然没有store-id属性。

在这种情况下,this对象与input.target(点击事件的目标DOM元素)相同。

答案 1 :(得分:1)

你应该使用“this”ala:

fValue =  $(this).attr("store-id");