javascript
  • html
  • checkbox
  • 2014-03-25 44 views 0 likes 
    0

    我在尝试使用javascript获取复选框的文本时遇到了一些困难。这里是我的html代码:在JavaScript中获取选中的复选框的文本

    content += "<tr><td><input id='type_select1' class=\"pss\" type=\"checkbox\" onclick='queryPSS()' >Commercial and Residential</td><td><input id='type_select2' class=\"pss\" type=\"checkbox\" onclick='queryPSS()' >Commercial</td></tr>"; 
    content += "<tr><td><input id='type_select3' class=\"pss\" type=\"checkbox\" onclick='queryPSS()'>Heavy Vehicle Park</td><td><input id='type_select4' class=\"pss\" type=\"checkbox\" onclick='queryPSS()'>Hospital</td></tr>"; 
    content += "<tr><td><input id='type_select5' class=\"pss\" type=\"checkbox\" onclick='queryPSS()'>Hotel</td><td><input id='type_select6' class=\"pss\" type=\"checkbox\" onclick='queryPSS()'>Industrial</td></tr>"; 
    content += "<tr><td><input id='type_select7' class=\"pss\" type=\"checkbox\" onclick='queryPSS()'>Industrial-White</td><td><input id='type_select8' class=\"pss\" type=\"checkbox\" onclick='queryPSS()'>Office</td></tr>"; 
    content += "<tr><td><input id='type_select9' class=\"pss\" type=\"checkbox\" onclick='queryPSS()'>Recreation</td><td><input id='type_select10' class=\"pss\" type=\"checkbox\" onclick='queryPSS()'>Residential (Landed)</td></tr>"; 
    content += "<tr><td><input id='type_select11' class=\"pss\" type=\"checkbox\" onclick='queryPSS()'>Residential (Non-Landed)</td><td><input id='type_select12' class=\"pss\" type=\"checkbox\" onclick='queryPSS()'>Residential</td></tr>"; 
    content += "<tr><td><input id='type_select13' class=\"pss\" type=\"checkbox\" onclick='queryPSS()'>White Site</td></tr>"; 
    

    这里是我如何才能选中的复选框的文本:

    var type_select = document.getElementById('type_select'); 
    if(type_select.checked == true) 
    { 
        var type_filter = type_select.text; 
        alert(type_filter); 
    } 
    

    然而,当我检查的检查框,弹出消息显示“undefined ”。我不知道出了什么问题。提前致谢。

    +0

    我希望你认识到多个表单元素不能有相同的ID –

    +0

    有没有其他方法可以解决这个问题?因为我想要做的是获取复选框的文本并执行其他功能 –

    +0

    你可以给他们diffids.for例如。 type_select1,type_select2,type_select3..point要注意的是,它们必须是唯一的。即它 –

    回答

    1

    所以我终于得到你正在尝试做的事情。首先让我们考虑你的内容字符串中的一个样本。

    <td><input class=\"pss\" type=\"checkbox\" onclick='queryPSS()' value = "myValue">Commercial and Residential</td> 
    

    我们仍然有不同的ID。但点击后,你可以像这样激发customFunction(甚至可以是queryPSS)。确保您还添加了value属性并将其设置为所需的值。

    onclick = customFunction(this) 
    

    某处,你定义函数这样,

    function customFucntion(idValue){ 
        var elem = idValue.value; 
    } 
    

    完蛋了。这应该工作。

    +0

    不要打扰'身份证' - 在大多数情况下,人们花费大量时间搞清楚,你不能给多个元素相同的ID,然后试图找出如何给他们所有独特的ID,你不需要他们。只需调用'customFunction(this)'并在函数中,'idValue.value' – Dennis

    +0

    @Dennis这是一个很好的观点。我会记住这一点。感谢:) –

    +0

    因此,对于我的情况,在复选框标记中,我应该把这个:onclick = queryPSS(this)? –

    相关问题