无法在Javascript中单击标签
Not able to click on Label in Javascript
我试图点击标签,但无法点击。这是我的代码:
function nameToggle(){
var NameInput = get("nameInput");
var labelName = nameInput.getLabel();
alert(labelName);
labelName.onclick = showAlert;
}
function showAlert(){
alert("onclick Event Detected");
}
这是我的html:
<div id="nameShow">
<div style="margin: 36px 0 0 50px;">
<input id="nameInput" label="Name" onkeydown="namesFunction()"/>
</div>
</div>
在输入中,我想onkeydown调用namesfunction,它工作得很好,但当点击标签(Name)时,我想切换。我正在另一个函数中调用nameToggle。但我无法点击"姓名"。我没有使用jQuery。只有Javascript。感谢您的帮助。
1)在函数nameToggle()
中,您已将onclick分配给labelName
,但这是一个字符串("Name")。将onclick分配给NameInput
,它是元素:
function nameToggle(){
var NameInput = document.getElementById("nameInput");
var labelName = nameInput.getLabel();
alert(labelName);
NameInput.onclick = showAlert; // <---
}
2) 由于您在函数内进行onclick赋值,因此必须在某个位置用nameToggle()
调用它,然后才能单击。
如果您不想,您必须将外部的分配作为一个函数:
document.getElementById("nameInput").onclick = showAlert;
编辑根据您的评论:只有DOM元素是可点击的。label
只是元素的一个属性,不能单击属性。在输入之前将标签作为html中的真实元素,如下所示:
<label for="nameInput" onclick="showAlert()">Name</label>
for
-属性表示此<label>
属于id=nameInput的输入。您可以在标签内分配onclick,如上所示,也可以使用:
document.querySelector("label[for='nameInput']").onclick = showAlert;
相关文章:
- 单击标签后,使用Javascript更改正文CSS
- 如果在使用IE 7或8时隐藏,则单击标签不选中复选框
- 单击标签,如果复选框道具检查为真
- 如何动态单击标签以仅检查整行
- 只需单击标签即可双击
- 单击标签时获取其 ID
- 如何在 MVC 应用程序中单击标签时选中所有复选框
- 当单击
- 标签下的标签时,我想将活动类添加到该
- 标签中
- JavaScript 在选中复选框时通过单击标签进行确认
- 单击标签时未单击复选框
- 使用ajax打印“;测试”;单击标签时显示到屏幕
- 真棒获取并单击标签属性
- 单击标签应选择无线电输入
- 向下滑动一次单击标签不会滑动
- 无法在Javascript中单击标签
- 单击标签,选择一个选项
- 如何创建单击标签时向左滑动的搜索栏?
- 我如何使用document.getElementById(someid).单击标签a
- 复选框& # 39;改变# 39;事件在单击标签时起作用.ie8, ie7
- 如何使复选框在单击标签时被选中
- 标签下的标签时,我想将活动类添加到该