我正在使用变量模板并在单击按钮时调用 AddCard 函数,但在检查元素时未正确读取。
但应该看起来像这样:
<input type="button" class="btn btn-success btn-xs" onclick="AddCard("CSE101")" value="Add">
以下是我用来获取ID的代码。
var template = " <div class='mycard text-center col-md-2' id ='"+obj.Course+"'> <div class='card-header'> <p1>"+ obj.Course +"</p1> </div> <div class = 'card-block'> <div id = 'svgcontainer"+i+"'> </div> </div> <div class = 'coursename'> <p2> "+obj.CourseName+" </p2> </div> <div class='contact-submit' > <input type='button' class ='btn btn-success btn-xs' onClick = 'AddCard('"+ obj.Course +"')' value='Add' > <input type='button' class ='btn btn-danger btn-xs' onClick = 'SkillVis2();this.disabled=true' value='Play'> </div> <div class='card-footer text-muted'> Prof. XYZ </div> </div>"
function AddCard (corsename)
{
var obj = _.find(data, function(obj){ return obj.Course == corsename; });
SkillVis(obj);
};
答案 0 :(得分:2)
使用转义字符可以避免此问题:
onclick="AddCard(\"CSE101\")"
另一种可能性是对参数使用单引号:
onclick="AddCard('CSE101')"
对于你的js-string,解决方案是:
onClick =\"AddCard('" + obj.Course + "')\"
答案 1 :(得分:0)
"onClick = 'AddCard("+ obj.Course + ")' "
不应该那样吗?