这适用于所有浏览器,除了IE,任何人都可以解释为什么我可以解决它。我正在根据我的下拉列表
的所选索引的索引显示javascript对象的索引 $(document).ready(function () {
var pdata = [{ Name: "Apples", Price: 1.99 },{ Name: "Bananas", Price: 2.45 } ];
$('#produceTMPL').tmpl(pdata).appendTo('#produceList');
$(document).ready(function () {
$('#add1').click(function () {
var selected = $('#produceList option:selected').index();
item = pdata[selected];
console.log(selected);
$('#cart').append('<p>' + item.Name + ', ' + item.Price + '</p>');
});
});
HTML:
<div>
<select id="produceList">
<option>make a selection</option>
</select>
答案 0 :(得分:1)
item
是IE中窗口对象的受保护属性。只需重命名变量,或在函数中正确声明(使用var
)。
答案 1 :(得分:0)
console.log
在IE中抛出一个错误,所以要更安全一面不要使用console.log而不检查浏览器是否支持它。
try{
if(console && console.log) console.log('message')
}catch(e){}
OR
if ('undefined' !== typeof console){console.log(message); }