0

我试图让 javascript 打印出手机的价格,但由于某种原因它不会打印。我已经做了一个 js lint 测试,但我不明白为什么它没有连接起来。我希望有人能指出我正确的方向。这是我的jsfiddle。http://jsfiddle.net/blimbam/HEu55/1/

这是我的 Javascript 代码。

 var priceBooks = {
    'iphone': {
        'prepay': {
            '12': "n/a",
                '18': "n/a",
                '24': "n/a",
                'prepay': 619
        },
            'CFM': {
            '12': "n/a",
                '18': 229,
                '24': 129,
                'prepay': "n/a"
        },
            'Band B': {
            '12': "n/a",
                '18': 219,
                '24': 119,
                'prepay': "n/a"
        }
    },
    HTCOne: {
        prepay: {
            '12': "n/a",
                '18': "n/a",
                '24': "n/a",
                'prepay': 599
        },
            'CFM': {
            '12': "n/a",
                '18': 179,
                '24': 79,
                'prepay': "n/a"
        },
            'Band B': {
            '12': "n/a",
                '18': 169,
                '24': 69,
                'prepay': "n/a"
        }
    },
    S3: {
        'prepay': {
            '12': "n/a",
                '18': 'n/a',
                '24': 'n/a',
                'prepay': 569
        },
            'CFM': {
            '12': "n/a",
                '18': 79,
                '24': 0,
                'prepay': 'n/a'
        },
            'BandB': {
            '12': 'n/a',
                '18': 69,
                '24': 0,
                'prepay': 'n/a'
        }
    }
},

    phone = document.GetElementById('phone'),
    plan = document.GetElementById('plan'),
    term = document.GetElementById('term'),
    price = document.GetElementById('price');


function showPrice() {
    'use strict';
    if (term.value !== '') {
        price.value = priceBooks[phone.value][plan.value][term.value];
    } else {
        price.value = 'wrong input';
    }
}
phone.onchange = plan.onchange = term.onchange = showPrice;
4

2 回答 2

0

它应该读取getElementById而不是GetElementById,使用开发人员控制台会在抛出错误时向您显示此问题。CTRL-SHIFT-J 将带您进入许多浏览器上的开发者控制台。

于 2013-04-24T20:06:42.203 回答
0

除了 Xotic750 建议更改GetElementById为之外getElementById,还有几个错位的逗号和分号。这是我修改后的代码:

var priceBooks = {
    'iphone': {
        'prepay': {
            '12': "n/a",
                '18': "n/a",
                '24': "n/a",
                'prepay': 619
        },
            'CFM': {
            '12': "n/a",
                '18': 229,
                '24': 129,
                'prepay': "n/a"
        },
            'Band B': {
            '12': "n/a",
                '18': 219,
                '24': 119,
                'prepay': "n/a"
        }
    },
    HTCOne: {
        prepay: {
            '12': "n/a",
                '18': "n/a",
                '24': "n/a",
                'prepay': 599
        },
            'CFM': {
            '12': "n/a",
                '18': 179,
                '24': 79,
                'prepay': "n/a"
        },
            'Band B': {
            '12': "n/a",
                '18': 169,
                '24': 69,
                'prepay': "n/a"
        }
    },
    S3: {
        'prepay': {
            '12': "n/a",
                '18': 'n/a',
                '24': 'n/a',
                'prepay': 569
        },
            'CFM': {
            '12': "n/a",
                '18': 79,
                '24': 0,
                'prepay': 'n/a'
        },
            'BandB': {
            '12': 'n/a',
                '18': 69,
                '24': 0,
                'prepay': 'n/a'
        }
    }
};

phone = document.getElementById('phone');
plan = document.getElementById('plan');
term = document.getElementById('term');
price = document.getElementById('price');

function showPrice() {
    'use strict';
    if (term.value !== '') {
        price.value = priceBooks[phone.value][plan.value][term.value];
    } else {
        price.value = 'wrong input';
    }
}
phone.onchange = plan.onchange = term.onchange = showPrice;
于 2013-04-24T20:16:28.407 回答