javascript
  • html
  • checkbox
  • 2014-03-25 52 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)? –

    相關問題