簡體   English   中英

數組的內容顯示為[object HTMLInputElement],我不需要

[英]Contents of array display as [object HTMLInputElement], which I do not want

因此,此功能應該從表單中獲取要檢查的蛋糕:

function whichCakesAreChecked() {
    var cake = document.forms[0];
    var cakesChecked = [];
    for (var i = 0; i < cake.length; i++) {
        if (cake[i].checked) {
            cakesChecked.push(cake[i]);
        }
    }
    return cakesChecked.toString();
}

我還有另一個函數,該函數獲取whichCakesAreChecked()的輸出,並通過giantArray.push(whichCakesAreChecked)將其推入數組。 當我嘗試打印數組時,whichCakesAreChecked()不會返回已檢查的蛋糕,而是類似"[object HTMLInputElement],[object HTMLInputElement]"

如何更改代碼以實際打印出已檢查的蛋糕?

這樣有幫助嗎? 在這里,我們可以放置復選框名稱,而不是放置復選框元素。 將復選框元素放入數組中並調用toString()導致多個[object HTMLInputElement]因為它們是HTMLInputElement類型的對象。

 function myfunction() { var arr = []; var elem1 = document.getElementById('one'); var elem2 = document.getElementById('two'); arr.push(elem1.name); arr.push(elem2.name); console.log(arr.toString()); } myfunction(); 
 <label for='one'>One</label> <input type="checkbox" id="one" checked="checked" name="one" /> <br/> <label for='two'>Two</label> <input type="checkbox" id="two" name="two" /> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM