根据下拉选择显示文本(代码适用于jsfiddle但不适用于网站?)

时间:2013-04-08 22:47:39

标签: javascript jsfiddle

我在某个地方遇到了这个代码的问题,但无法弄明白。 Here is the jsfiddle link

document.getElementById('email-list').onchange = function() {
    var i = 1;
    var myDiv = document.getElementById(i);
    while(myDiv) {
        myDiv.style.display = 'none';
        myDiv = document.getElementById(++i);
    }
    document.getElementById(this.value).style.display = 'block';
};

在那里工作得很好,但是我可以让它在wamp或live上的两个不同的网站中的任何一个上工作。我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

您的JS小提琴示例有效,因为您在JsFiddle中选择了onload选项。所以 确保使用window.onload

包装代码
window.onload = function(){
document.getElementById('email-list').onchange = function() {
    var i = 1;
    var myDiv = document.getElementById(i);
    while(myDiv) {
        myDiv.style.display = 'none';
        myDiv = document.getElementById(++i);
    }
    document.getElementById(this.value).style.display = 'block';
}};

JS Fiddle Example