2

我有大约 20 个同名复选框,但 id 值不一样

 <input type="checkbox" name="device" id="1_2"/>
 <input type="checkbox" name="device" id="10_4"/>
 <input type="checkbox" name="device" id="5_6"/>
 <input type="checkbox" name="device" id="4_0"/>
 <input type="checkbox" name="device" id="8_9"/>
 <input type="checkbox" name="device" id="3_4"/>

我想要一个功能,如果我点击一个复选框,那么我会收到一个带有 ID 值的警报

例如,如果我点击第一个复选框

alert("Value before _ : 1 - Value after _ : 2")

我怎样才能做到这一点?

4

6 回答 6

1

这就是你要找的

     $(document).ready(function () {
        $('input[type="checkbox"]').click(function(){
           var vals = this.id.split('_');
           alert("Value before _ : "+vals[0]+" - Value after _ : " + vals[1])
        })
     })

单击每个复选框时调用此函数。它使用 javascript 的split函数将 id 属性值拆分为一个数组。

于 2013-04-20T18:13:45.457 回答
1

这是你需要的吗? Demo

    $('input:checkbox[name="device"]').click(function(){
    var id = $(this).attr('id');
    alert( 'Value before:' + id.split('_')[0] + ' - Value after:' + id.split('_')[1] );
    });
于 2013-04-20T18:14:15.307 回答
1

这是一个例子:jsfiddle

希望它是您所需要的,玩得开心。

HTML : (向输入添加一个类)

 <input class='try' type="checkbox" name="device" id="1_2"/>
 <input class='try' type="checkbox" name="device" id="10_4"/>
 <input class='try' type="checkbox" name="device" id="5_6"/>
 <input class='try' type="checkbox" name="device" id="4_0"/>
 <input class='try' type="checkbox" name="device" id="8_9"/>
 <input class='try' type="checkbox" name="device" id="3_4"/>

脚本:(点击事件)

$('.try').click(function() {
    var idd= $(this).attr('id');
    var explode = idd.split('_');
    alert('Value before:' + explode[0] + ' - Value after:' + explode[1]);
});
于 2013-04-20T18:16:58.997 回答
0
$("input[type=checkbox]").click(function(){
   arr = $(this).attr("id").split("_");
   alert("Value before _ :"+arr[0]+" Value after _ :"+arr[1]);
});

这是jsFiddle

于 2013-04-20T18:13:55.683 回答
0
$("input[type=checkbox]").click(function(){
     alert($(this).attr("id"))
});
于 2013-04-20T18:16:01.553 回答
0

我希望这个能帮上忙:

     $('input:checkbox[name="device"]').click( function(){
         var selected_data = $(this).attr('id').split('_');
         alert('_ 之前的值:' + selected_data[0] + ' - ' + '_ 之后的值:' + selected_data[1]);
     });
    

于 2013-04-20T18:25:20.917 回答