JavaScript onClick参数表示未定义变量
我的对象是在我的JS中定义的,为什么会返回错误?我还通过其他onclick传递了对象名 HTMLJavaScript onClick参数表示未定义变量,javascript,onclick,Javascript,Onclick,我的对象是在我的JS中定义的,为什么会返回错误?我还通过其他onclick传递了对象名 HTML 也许把第二个参数用引号括起来 function insertBefore(selector, html){ console.log("selector: "+selector); $(html).insertBefore("#"+selector); }; +添加位置 编辑: 正如JmJ所指出的,密钥也是错误的。应为“uaradlocation”: +添加位置 是否可以将第二个参数用引号
也许把第二个参数用引号括起来
function insertBefore(selector, html){
console.log("selector: "+selector);
$(html).insertBefore("#"+selector);
};
+添加位置
编辑:
正如JmJ所指出的,密钥也是错误的。应为“uaradlocation”:
+添加位置
是否可以将第二个参数用引号括起来
function insertBefore(selector, html){
console.log("selector: "+selector);
$(html).insertBefore("#"+selector);
};
+添加位置
编辑:
正如JmJ所指出的,密钥也是错误的。应为“uaradlocation”:
+添加位置
发生这种情况是因为您必须在创建对象之前引用该对象。即使在HTML文件的顶部加载JavaScript,如果首先执行HTML,也会发生这种情况。我的建议是在创建对象后命名JavaScript块或文件中的HTML元素,或者也在那里创建HTML块。这是因为您必须在创建对象之前引用它。即使在HTML文件的顶部加载JavaScript,如果首先执行HTML,也会发生这种情况。我的建议是在创建对象后命名JavaScript块或文件中的HTML元素,或者也在那里创建HTML块。除了其他人提到的错误之外
PAGEHTML.uarLocation
传递给您的函数,但您的对象被称为PAGEHTML.uarAddLocation
”insertBefore
是一个内置的javascript方法,因此不能将该名称用于函数var PAGEHTML={
uarAddLocation:`异常活动量
异常活动开始日期
异常活动结束日期
异常活动地点
`
};
函数insertBefor(选择器,html){
警报(选择器);
$(html).insertBefore(“#”+选择器);
};代码>
+除了其他人提到的错误之外,还要添加位置
“您正在将PAGEHTML.uarLocation
传递给您的函数,但您的对象被称为PAGEHTML.uarAddLocation
”
“也许将第二个参数用引号括起来?”
注意这一点
insertBefore
是一个内置的javascript方法,因此不能将该名称用于函数
var PAGEHTML={
uarAddLocation:`异常活动量
异常活动开始日期
异常活动结束日期
异常活动地点
`
};
函数insertBefor(选择器,html){
警报(选择器);
$(html).insertBefore(“#”+选择器);
};代码>
+在onclick中添加位置
:
<button id="addLocation" onclick="insertBefore(PAGEHTML.uarAddLocation, 'addLocation')">+ Add Location</button>
- 您正在将HTML(
PAGEHTML.uaradlocation
)作为选择器传递
addLocation
必须用引号括起来
PAGEHTML.uarLocation
不存在,但PAGEHTML.uarAddLocation
存在
- 您的函数必须具有不同的名称,这会导致本机出现问题
所以它应该是这样的:
onclick="insertBefore(PAGEHTML.uarLocation, addLocation)"
下面是一个工作片段:
var PAGEHTML={
uarAddLocation:`异常活动量
异常活动开始日期
异常活动结束日期
异常活动地点
`
};
函数insertBefor(选择器,html){
console.log(“选择器:”+selector);
$(html).insertBefore(“#”+选择器);
}
+在onclick中添加位置
:
<button id="addLocation" onclick="insertBefore(PAGEHTML.uarAddLocation, 'addLocation')">+ Add Location</button>
- 您正在将HTML(
PAGEHTML.uaradlocation
)作为选择器传递
addLocation
必须用引号括起来
PAGEHTML.uarLocation
不存在,但PAGEHTML.uarAddLocation
存在
- 您的函数必须具有不同的名称,这会导致本机出现问题
所以它应该是这样的:
onclick="insertBefore(PAGEHTML.uarLocation, addLocation)"
下面是一个工作片段:
var PAGEHTML={
uarAddLocation:`异常活动量
异常活动开始日期
异常活动结束日期
异常活动地点
`
};
函数insertBefor(选择器,html){
console.log(“选择器:”+selector);
$(html).insertBefore(“#”+选择器);
}
+添加位置
PAGEHTML是全局变量吗?(如果必须能够从内联事件处理程序访问。)您正在将PAGEHTML.uarLocation
传递给您的函数,但您的对象名为PAGEHTML.uaradlocation
@JmJ。我知道,我已经做了更改,但仍然收到相同的错误。PAGEHTML是全局变量吗?(如果必须能够从内联事件处理程序访问。)您正在将PAGEHTML.uarLocation
传递给您的函数,但是您的对象被称为PAGEHTML.uaradlocation
@JmJ。我知道,我已经做了更改,仍然收到可能需要的相同错误,并且来自insertBefore()的定义我认为这些参数是错误的,但这并不能解释为什么会有一个引用错误明确提到PAGEHTML。对吧。。。我想看看完整的代码。还根据JmJ的观察更新了我的答案…为什么“可能用引号括起第二个参数”?第二个参数用作选择器或jquery包装器:$(html)
<代码>
不存在这可能是必要的,从insertBefore()的定义来看,我认为参数的方式是错误的,但它没有解释为什么会出现显式提到PAGEHTML的引用错误。对。。。我想去看一个公司
onclick="insertBefore(PAGEHTML.uarLocation, addLocation)"
onclick="insertBefor('addLocation', PAGEHTML.uarAddLocation)"