当我将脚本代码放在文本框上方时,它不起作用,但如果我将代码放在输入字段下面,那么它就能正常工作。
View
不工作
但是下面的作品
<script src="js/jQueryv3.1.1.js" type="text/javascript"></script>
<script>
$("input").keydown(function(e){
alert();
});
</script>
<input type="number" id="phoneNo" />
答案 0 :(得分:2)
用$(document).ready()包裹你的代码,如:
$(function() {
$("input").keydown(function(e){
alert();
});
});
或
$(document).ready(function() {
$("input").keydown(function(e){
alert();
});
});
jQuery在输入框之前定义输入元素时无法找到输入元素,但是当你在输入框之后写入相同时,它将获得有关输入框的信息。
希望它会对你有所帮助。
答案 1 :(得分:0)
假设您想要将处理程序附加到alreadt定义的元素,您可以使用
$("input").keydown(function(e){
alert();
});
正如您已经使用过的那样。
但是,如果要将事件处理程序附加到动态元素(稍后创建的元素),则可以使用:
$(document).on('keydown', 'input', function(e){
alert();
});