我正在动态创建一个复选框,当执行onclick函数时,我在控制台中收到“函数未定义”错误。单步执行时,会在页面加载事件期间读取代码,但单击时会抛出错误。我已经尝试将函数加载到$(document).ready();但得到同样的错误:
*这些函数位于页面加载时调用的函数内。 'chkBox'是未定义的函数
function lyrBuild(lyrVar, lyrName) {
$('<li>').attr({
id: lyrVar.liID,
class: 'layer'
}).html($('<input>').attr({
id: lyrVar.cbID,
type: 'checkbox',
onClick: "chkBox(" + "'" + lyrVar.liID + "'" + ")",
checked: 'unchecked',
name: lyrVar.Name,
value: lyrVar.val
})).appendTo('#layersList');
}
function chkBox(lyrId) {
//switch statement goes here
}
答案 0 :(得分:0)
尝试声明dhkBox函数,如:
var chkBox = function(lyrId) {
//switch statement goes here
}
答案 1 :(得分:0)
你毫无疑问,但无论如何我都会给你答案;)
“这些函数位于函数内部”,这意味着当您以这种方式调用时chkBox
不可用。如果可能,请使用.click()
,doc here或.on()
,或将chkBox
放在函数外部。