我有一个jquery文件,如下所示:
$('.font').click(function(){
for(i=0;i<FontArray.length;i++){
var font = FontArray[i];
$('#view_container').append("<button class='b_font' id='"+font+"' onclick='saveMe("+font+");'>"+font+"</button>");
$('.'+font).css('font-family',font);
}
// event.preventDefault();
});
函数saveMe定义如下:
function saveMe(font){
alert(font);
}
但是当我单击任何按钮时,出现以下错误:
未捕获的ReferenceError:未定义saveMe
谁可以帮我这个事 ?
提前致谢!
最佳答案
线
onclick='saveMe("+font+");'
呈现为
onclick='saveMe(arial);'
因此,当您单击它时,它正在查找变量
arial
而不是字符串"arial"
。您需要引用它。onclick='saveMe(\""+font+"\");'
现在,对于未定义saveMe的情况,需要具有更多上下文。 saveMe何时定义?如果它在文档就绪/窗口onload方法内部,则需要将其放在文档外部,以便在窗口范围内可用。
和线
$('.'+font).css('font-family',font);
应该是
$('#'+font).css('font-family',font);