尝试访问函数时'Uncaught SyntaxError: Unexpected Token }'



我具有一个填充多个按钮的函数,每个按钮都有自己的单击功能:

$("#event_list").append(
          "<button type='button' onClick='showInfo("+i+",'"+name+"')'> Event:<br>"+events_arr[i][2]+"<br> Organizer:<br>"+events_arr[i][1]+"</button>"
        );

函数showinfo在文件中的其他位置定义(i是一个数字,名称是字符串)

function showInfo(i, name)
{
  console.log("showInfo works");
  //makeTable12(i, name);
  //makeTable24(i);
}

每当我单击这些按钮时,Chrome都会抛出Uncaught SyntaxError: Unexpected token }我不知道为什么这样做。所有的帮助都将受到赞赏!

,由于您用单引号将onclick内容包装了',因此您应该用double-Quotes包装该函数的参数(但请注意,您应该逃脱它们):

 onClick='showInfo("+i+",""+name+"")'

检查以下片段:

i = 0;
name = 'test';
events_arr = [['', '', '']];
$("#event_list").append(
  "<button type='button' onClick='showInfo("+i+",""+name+"")'> Event:<br>"+events_arr[i][2]+"<br> Organizer:<br>"+events_arr[i][1]+"</button>"
);
function showInfo(i, name)
{
  console.log("showInfo works");
  //makeTable12(i, name);
  //makeTable24(i);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="event_list"></div>

相关内容

  • 没有找到相关文章

最新更新