2013-07-26 31 views
1

如何检索与HTML中复选框相对应的标签的值?我有两个/三个标签和一个复选框,彼此相邻,现在如果复选框被选中,我需要检索标签的值。你能让我知道如何做到这一点?在下面的示例中,我希望检查复选框时检索标签内的两个文本字符串。我需要知道如何将复选框连接到标签或类似的东西,因为将会有大约100个复选框和大约200个标签,所以我需要一种方法将标签连接到复选框?根据复选框状态检索标签的值

<label>Value:13485894033</label> 
<label>Custom Asset Type </label> 
<input type="checkbox" name="CB1" value="CSElement;1242632775392" id="checkbox1" /> 
+3

你是什么意思“标签的价值”? – Cherniv

+0

我想检索出现在标签中的字符串。 – CodeGeek123

+0

标签中出现什么字符串?我看到一个标签和一个输入就是它。 – JonathanRomer

回答

2

我希望这是你所追求的。

样本HTML:

<input id="check1" type="checkbox" class="watchFor" /> 
<label for="check1" >First Checkbox</label><br /> 


<input id="check2" type="checkbox" class="watchFor" /> 
<label for="check2" >Second Checkbox</label> 

然后jQuery的:

$(function(){ 
$(".watchFor").change(function(){ 
    if($(this).is(":checked")){ 
      var id = $(this).attr("id"); 
      var label = $("label[for='" + id + "']"); 
      alert(label.text()); 
     } 
    }); 
}); 

这里是工作提琴:http://jsfiddle.net/LwPrM/

+0

这太棒了。谢谢! :) – CodeGeek123

+0

很高兴帮助:) –

0

指定一个类名对应的复选框ID

标签
<label class="checkbox1">Value:13485894033</label> 
<label class="checkbox1">Custom Asset Type </label> 
<input type="checkbox" name="CB1" value="CSElement;1242632775392" id="checkbox1" /> 

var labels = document.getElementByTagsName("label"); 

for(var i=0;i<labels.length;i++) 
{ 
    if(document.getElementById("checkbox1").checked) 
    { 
     if(labels[i].class == "checkbox1") 
     var string = labels[i].innerHTML; 
    } 
}