input标签中 onclick 中为什么可以直接使用 html 元素中的 id.click()?
onclick 中为什么可以直接使用 html 元素中的 id.click()?
<input type="file" id="aaa">
<input type="button" value="button" onclick="aaa.click()">
点击第二个 input 为什么使用 aaa.click 可以触发第一个 input 的对话框?
是什么特殊的语法?
答:
如果一个元素拥有ID属性,那么ID属性的属性值就会成为window对象的属性名.
如果一个元素拥有name属性,那么name属性的属性值就会成为window对象的属性名.但这个元素的标签名必须是: a, applet, area, embed, form, frame, frameset, iframe, img, object,其中的一个.
意思也就是
window.test就能取到它
然后可能各个浏览器有差异 没测试。
为input绑定js事件的用法:
<input type="button" value="button" onclick="fun()">
<script>
function fun(){
console.log('...')
}
</script>
<input type="text" oninput="myFunction()">
定义和用法
oninput 事件在用户输入时触发。
该事件在 <input> 或 <textarea> 元素的值发生改变时触发。
提示: 该事件类似于 onchange 事件。不同之处在于 oninput 事件在元素值发生变化是立即触发, onchange 在元素失去焦点时触发。另外一点不同是 onchange 事件也可以作用于 <keygen> 和 <select> 元素。
<script>
function myFunction(){
console.log('正在输入...')
}
</script>