点击即可以javascript格式更改图片

时间:2011-02-15 03:22:38

标签: javascript html exception forms

在此代码中,我收到以下错误:异常...“索引或大小为负或大于允许的数量”代码:“1”nsresult:“0x80530001(NS_ERROR_DOM_INDEX_SIZE_ERR)”。是什么造成的?感谢

    function makecard(){ 
    var bodypaint = document.getElementById('minaj'); 
    var recipient = document.getElementById("recipient").value 
    var radioboxes = document.forms["cardform"].phrase.length 
    var i = document.getElementById("color").selectedIndex; 
    var z = document.getElementById("city").selectedIndex; 
    var tchatche= document.getElementById("color").options[i].text; 
    var malouba= document.getElementById("city").options[z].value; 

    for(c=0; c<radioboxes; c++){ 
        if( document.forms["cardform"].phrase[c].checked){ 
            var phrasevalue=document.forms["cardform"].phrase[c].value; 
            break; 
        } 
    } 
    if(document.getElementById("color").options[i].text === "White"){ 
        bodypaint.style.backgroundColor ="White" 
    } 
    if(document.getElementById("color").options[i].text === "Red"){ 
        bodypaint.style.background ="Red" 
    } 
    if(document.getElementById("color").options[i].text === "Blue"){ 
        bodypaint.style.backgroundColor ="Blue" 
    } 
    var selectedcity = document.forms["cardform"].city.value 
    var paragraph = document.createElement("div"); 
    paragraph.setAttribute("id","card") 
    document.body.appendChild(paragraph) 
    var picture = document.createElement("img") 
    picture.setAttribute("src", "") 
    paragraph.appendChild(picture) 
    paragraph.appendChild(document.createTextNode(phrasevalue + " from " + selectedcity + recipient)) 

    if(malouba== "Paris"){ 
        document.getElementById("picture").src = "paris.jpg" 
    } 


    if(malouba== "Venice"){ 
        document.getElementById("picture").src = "venice.jpg" 
    } 


    if(malouba== "Rome"){ 
        document.getElementById("picture").src = "rome.jpg" 
    } 
} 
document.getElementById("makeacard").onclick = makecard; 

1 个答案:

答案 0 :(得分:0)

很可能其中一个语句正在生成一个包含0个元素的数组,然后当你尝试使用它时它就会吓坏了:

    var radioboxes = document.forms["cardform"].phrase.length

在那上做一个小的console.log(radioboxes)并查看它是否未定义或为空