我有一個複選框包含在我的頁面上的表單。當用戶點擊一個按鈕時,我需要找出複選框中的哪些項目已被選中。在Javascript中使用變量for循環
我可以得到這個與以下代碼一起工作,沒有任何問題。
for (i=0; i < Form3.CBox1.length; i++)
if (Form3.CBox1[i].checked)
{
Answer = Answer + Form3.CBox1[i].value + ",";
}
alert(Answer);
我的問題是,我打電話給我的頁面上的上述功能幾次,我想在變量而不是硬編碼的形式和複選框的名字來傳遞。每次我做這個Javascript都不會返回任何東西。在下面的代碼中,變量vCurrForm & vCurrCBox已經在另一個函數中被設置得更早了,並且我已經過測試以確保它們被正確設置,但是我仍然無法讓這段代碼正常工作。
for (i=0; i < vCurrForm.vCurrCBox.length; i++)
if (vCurrForm.vCurrCBox[i].checked)
{
Answer = Answer + vCurrForm.vCurrCBox[i].value + ",";
}
alert(Answer);
任何幫助將不勝感激。由於
只是一個快速註上了「讓我覺得,被引用的變量是一個單一的項目」 - 複選框是選中所有複選框共享集合的給定'姓名'屬性 – Joe
@Joe,在海報的樣本中很難看到。可以設置一個等於上游對象集合的變量,並像控制器一樣操作它們。再次,沒有看到設置變量的代碼,我們都只是在進行有根據的猜測。數據類型以及在這種情況下如何設置可以使所有不同。 – CSharpConductor
當然,有可能叫做'vCurrForm'的變量沒有直接映射到一個表單,並且可能'vCurrCBox'不會映射到它內部的CheckBox集合,但它可能是**安全的假設:)當然,很容易說「但它仍然是可能的!」但真的,退一步,只是把常識帽子放一會:P – Joe