Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery:Don';不明白为什么元素选择器工作或不';行不通_Javascript_Jquery_Html - Fatal编程技术网

Javascript jquery:Don';不明白为什么元素选择器工作或不';行不通

Javascript jquery:Don';不明白为什么元素选择器工作或不';行不通,javascript,jquery,html,Javascript,Jquery,Html,我有一个包含以下元素的html文档 <input type="text" style="width: 40px;" name="rate" id="rate" value="1" /> 为什么呢 head中包含的jQuery是: <script src="/assets/jquery-1.12.3.min.js"></script> 接受事件名称作为第一个参数 由于没有名为#rate的事件,以下操作将不起作用 $(document).on('#rate'

我有一个包含以下元素的html文档

<input type="text" style="width: 40px;" name="rate" id="rate" value="1" />
为什么呢

head中包含的jQuery是:

<script src="/assets/jquery-1.12.3.min.js"></script>

接受事件名称作为第一个参数

由于没有名为
#rate
的事件,以下操作将不起作用

$(document).on('#rate', function() {
使用


on
应该采取事件,然后选择
类似
。on('keydown','#rate'

格式如下:

.on(事件[,选择器][,数据],处理程序)

是的

$(document).on('click', '#rate', function() {
                ^^^^^
    alert(); 
});

有关
$(文档)中的
输入的详细信息。在('input',function(){
不是选择器

文档
是选择器

如果要侦听特定元素上的
输入
事件,可以传递选择器作为:

或者,您可以在绑定回调之前选择特定元素:

$('#rate').on('input', function () {
  ...
});
您现在拥有的:

$(document).on('input', function() { } );
意味着

在任何元素的每个“输入”事件上,执行某些操作

如果只想对特定元素执行某些操作,请将此元素作为选择器传递:

$(document).on('input', "#rate", function() { } );

这里的
input
是一个事件,
#rate
是一个元素选择器。

正确的方法是:

 //on click
          $(document).ready(function(){
             $("#rate").click( function () {
                alert('Awesome');
            })});
用于输入框

<input type="text" style="width: 40px;" name="rate" id="rate" value="1" />
欲了解更多信息,请阅读:-

我发现,当我对jQuery函数为何不能正常工作感到困惑时,我希望查阅jQuery的API文档以了解用法和示例。具体来说,我将参考该函数的文档页面:

每个事件都会产生不同的期望结果。当输入发生更改时,您希望触发一些代码。使用的事件基于普通JavaScript事件,因此在这种情况下,您的选项包括打开
更改
键向上
,或
键向下

对于我来说,要决定使用哪一个事件,通常可以归结为一件事:在文本字段中显示输入之前,我的代码是否需要检查输入

您可以在这段代码中看到如何使用我提到的每个事件。

//更改时使用
//您会注意到,只有当光标离开输入字段时,才会“触发”

$(“#rate1”).on(“change”,function(){$(this.next().html("将代码包装在
文档中。准备好
处理程序。
上的
什么?您附加的事件是什么?不要破坏您的帖子。这可能会导致问题禁止。请看,OP似乎应该继续使用
输入
事件,而不是
键控
@zzzzBov可能,我只是展示了正确的语法。event名称可以更改。:@JherekCarnelian如果在加载页面后动态添加元素,则事件不会绑定,如果不绑定,则将代码包装到
ready()
callback中。请参阅,我在这里也使用jQuery,如果要使用document,请将其放入$(document.ready)中(函数(){//put the code here});
$('#rate').on('input', function () {
  ...
});
$(document).on('input', function() { } );
$(document).on('input', "#rate", function() { } );
 //on click
          $(document).ready(function(){
             $("#rate").click( function () {
                alert('Awesome');
            })});
<input type="text" style="width: 40px;" name="rate" id="rate" value="1" />
<input type="text" style="width: 40px;" name="rate"  value="1" class="rate">
//on click
      $(".rate").click( function () {
            alert('Awesome');
        })