jQuery 事件函数传参异常identifier starts immediately after numeric literal

问题情境:

  var arr=[aabbcc,112233];

  var html = "";

  for(var i =0;i<arr.length;i++){

    html += '<li id="'+arr[i]+'" onclick="select('+arr[i]+')">helloworld</li>'

  }

  $("ul").append(html);

  function select(id){

    var identifier = "#" + id; 

    $(identifier).html(); //抛异常的位置 

  }

分析:

  jQuery的ID选择器要用的是字符串,当传给ID选择器的是数字时会抛异常。将参赛改为字符串即可。

更正:

  循环体中的onclick="select('+arr[i]+')"改为onclick="select(\''+arr[i]+'\')"。\是转义符,用单引号将参数包裹起来。

posted @ 2018-05-10 18:04 luckyMichaelHuang 阅读(...) 评论(...) 编辑 收藏