此代码适用于除IE之外的所有其他浏览器

时间:2014-01-10 23:22:08

标签: javascript jquery

这适用于所有浏览器,除了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>

2 个答案:

答案 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); }