首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >为什么我的jquery (‘.on’)不适用于动态添加的selects

为什么我的jquery (‘.on’)不适用于动态添加的selects
EN

Stack Overflow用户
提问于 2013-02-18 17:33:00
回答 10查看 68.7K关注 0票数 22

我正在动态添加select元素,如下面的HTML所示。我不确定为什么.on('change‘...)不适用于动态选择。我遗漏了什么?

我使用的是Chrome 24.0.1312.57 + jquery 1.8.3。

代码语言:javascript
运行
AI代码解释
复制
<script type="text/javascript">
  $(document).ready(function() {
      $('#x select').on('change', function () { alert('helo'); })
      $('#y select').on('change', function () { alert('helo'); })

      $('#x').html($('#y').html());
  });
</script>

<div id="x"></div>
<div id="y">
    <select>
        <option>O1</option>
        <option>O2</option>
    </select>
</div>
EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2013-02-18 17:41:30

你的代码:

代码语言:javascript
运行
AI代码解释
复制
$('#x select').on('change', function () { alert('helo'); })

将事件处理程序附加到#x元素内的select。

你想要的东西(根据我的理解)是这样的:

代码语言:javascript
运行
AI代码解释
复制
$("#y").on('change','select',function () { alert('helo'); });

这会将一个事件处理程序附加到委托给其子“select”元素的#y元素

来自http://api.jquery.com/on/

.on()方法将事件处理程序附加到jQuery对象中当前选定的元素集。

票数 39
EN

Stack Overflow用户

发布于 2013-02-18 17:38:42

在初始页面加载时,对不在DOM中的元素的事件绑定将不起作用。您需要绑定到DOM中更靠上的元素,以允许事件向下渗透。这通常是我采取的方法:

代码语言:javascript
运行
AI代码解释
复制
$(document).on({
  change: function() {
    alert('helo');
  }
}, '#x select');

$(document).on({
  change: function() {
    alert('helo');
  }
}, '#y select');

我更喜欢它,因为你可以很容易地添加后续事件。

代码语言:javascript
运行
AI代码解释
复制
$(document).on({
  change: function() {
    alert('helo');
  },
  blur: function() {
    alert('helo');
  }
}, '#x select');
票数 14
EN

Stack Overflow用户

发布于 2017-03-14 06:48:08

不过,不要使用.live()/.bind()/.delegate(),。您应该使用.on()

对于静态和动态选择更改

代码语言:javascript
运行
AI代码解释
复制
$(document).on('change', 'select', function (e) {
    // do something 
});
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14942048

复制
相关文章
HTML篇(006)-title 与 h1 的区别、b 与 strong 的区别、i 与 em 的区
①title用于网站信息标题,突出网站标题或关键字,一个网站可以有多个title,seo权重高于H1;H1概括的是文章主题,一个页面最好只用一个H1,seo权重低于title。
齐丶先丶森
2022/05/12
4660
WordPress 教程:the_title() 与 the_title_attribute() 的正确用法
WordPress 提供了一个非常简单方便的函数来显示当前文章的标题,那就是:the_title()。这个函数经常被开发者在 header,post,page,loop,footer 里使用,这几乎是开发主题里最常用的函数之一,然而许多开发者并没有意识到这里有个地方并不应该使用此函数,那就是在 attributes 里,如:
Denis
2023/04/15
2.6K0
将Git与Github进行SSH连接
<!--more--> <a href="https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=112763915,265947675&fm=26&gp=0.jpg" class="highslide" onclick="return hs.expand(this,{slideshowGroup:'images'})"><img src="https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=112763915,265947675&fm=26&gp=0.jpg"></a> # Githu与Github 首先, - `Git`是一款免费、开源的分布式版本控制系统; - `Github`是用`Git`做版本控制的代码托管平台; 用一句话形容这二者的关系:Git是弓,你的代码是箭,Github是靶子。 Git是软件,它可在本地建立仓库,你写的代码的各个版本都可以存着 Github是网上仓库,你写的代码的各个版本都可以存着。 # 安装使用 ## 安装Git 1. 到[Git官网](https://git-scm.com/downloads)下载与你正在使用的操作系统(本文以`windows`为例)相对应的文件。一般地,选择`64-bit Git for Windows Setup`。 2. 安装时注意:勾选添加git到`环境变量`;在Windows Explorer Integration中勾选`Git Bash Here`。其余配置默认即可。 3. 安装完成后(可能需要**注销或重启**),在任意一个文件夹空白处右键,检查是否有`Git Bash Here`的选项。 ## 注册GitHub 到[GitHub官网](https://sqdxwz.com)注册一个账号。这里我以我的Github账号:`WangRongsheng` 为例进行演示。 ## 配置git与github关联 ### 设置邮箱和用户名 打开`Git Bash`(输入命令**均在Git Bash中进行**,以后不再声明),分别输入下列命令(输入一行命令后需要回车,以后不再声明): ```html git config --global user.name "WangRongsheng" git config --global user.email "603329354@qq.com" ``` 下面这一行设置可以增强输出命令的可读性: ```html git config --global color.ui auto ``` ### 用ssh生成公钥 输入: ```html ssh-keygen -t rsa -C "603329354@qq.com" ``` 回车之后会出现如下所示的输出,直接按回车即可: ```html Generating public/private rsa key pair. Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa): (按回车键) Enter passphrase (empty for no passphrase): (按回车键) Enter same passphrase again: (按回车键) ``` 这样密钥文件就生成了,默认在用户目录下,如:`C:\User\xxx\.ssh\` 这个文件夹中。其中的xxx是你的windows用户名。 ### 将公钥添加到`github`中 1. 在`C:\user\xxx\.ssh\`文件夹中找到`id_rsa.pub`这个文件,用文本编辑器(如记事本)打开,复制里面的所有内容。 2. 登陆`github账号`,点击头像旁的`小三角`展开,点击`settings`-`SSH and GPG keys`-`New SSH key`,在`Title`中取一个名字(任意),`key`中粘贴你刚刚复制的内容。然后点击`Add SSH key`即可。 ### 测试是否关联成功 输入: ```html ssh -T git@github.com ``` 出现以下结果即为成功: ```html Hi WangRongsheng! You've successfully authenticated, but GitHub does not provide shell access. ```
王荣胜
2020/03/13
7110
img中alt与title辨析
HTML5学堂:img中alt与title有何不同?本文主要从表现在含义、浏览器中的表现以及对于网站seo优化程度三个方面进行辨析,接下来我们一起来看看。 示例代码: <img src="h5course.jpg" alt="蜡笔小新 属性alt的值" title="蜡笔小新 属性title的值"> 1、含义不同: img标签alt属性是当图片不存在时或加载失败时的替代文字(进行显示);img标签title属性是对图片的描述与进一步说明。 2、在浏览器中的表现不同: 在FF、chrome和IE8+中,当鼠标
HTML5学堂
2018/03/12
1.4K0
img中alt与title辨析
js 动态修改浏览器标签的 title
django 前后端不分离项目的话,js 放在 base.html 模板里,其他模板继承 base.html,就可以全部页面都有标签 title 变化的效果了。
卓越笔记
2023/02/18
5.3K0
滚动title
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>^_^欢迎浏览本网站</title> </head> <body> </body> <script type="text/javascript"> var position=0; var message='^_^欢迎浏览本网站'; var x=2*(60/messag
河湾欢儿
2018/09/06
4.3K0
如何将wordpress的the_title()进行大小写处理
  有时我们在做wordpress网站时需要将标题的大写字母改成小写字母或小写字母转为大写字母方便调用,那么要如何改造呢?我们知道Wordpress the_title()函数默认回显标题,标准写法是
ytkah
2019/10/11
1.2K0
Blog Template Title
原文地址http://soft.dog/2018/07/06/blog-template/
franket
2021/08/10
1.1K0
TOP-TITLE
<%@ page contentType="text/html; charset=gb2312" language="java"  %>  <%@ page import="java.sql.*" %> <%@ page import="java.text.ParsePosition" %> <%@ page import="java.text.SimpleDateFormat" %> <%@ page import="java.util.Date" %> <jsp:useBean id="result" 
一朵灼灼华
2022/08/05
1.3K0
Angular Title Service 详解
Angular Title Service 用于获取和设置当前 HTML 文档的标题。Title Service 提供了以下方法:
阿宝哥
2019/11/05
2.1K0
如何将ReactJS与Flask API连接起来?
构建既可扩展又引人入胜的现代 Web 应用程序需要使用相关技术。ReactJS和Flask是两个流行的框架,分别用于前端和后端开发。
很酷的站长
2023/08/11
5050
如何将ReactJS与Flask API连接起来?
Node.js 连接 MySQL
安装驱动 本教程使用了定制的 cnpm 命令进行安装: $ cnpm install mysql 连接数据库 在以下实例中根据你的实际配置修改数据库用户名、及密码及数据库名: test.js 文件代码: var mysql = require('mysql'); var connection = mysql.createConnection({ host : 'localhost', user : 'root', password : '123456', datab
陈不成i
2021/07/13
2.2K0
关于vue的title标签中出现的htmlWebpackPlugin.options.title
(3条消息) 关于vue的title标签中出现的htmlWebpackPlugin.options.title_cokoD的博客-CSDN博客 
跟着阿笨一起玩NET
2020/09/27
3K0
关于H1的位置
相信大多数人都偏向第一种方式:用于文章标题上,从文章的角度上看,用户进到内容页里,想看到的当然就是文章的内容,文章标题理所当然是最重要的、最应该突出的。
GhostZhang
2022/08/21
3190
Markdown 使用参考h1
Markdown是一种易读易写的标记语言。它能被生成HTML。Markdown的目标是:成为一种适用于网络的书写语言。
前端GoGoGo
2018/08/27
7080
Markdown 使用参考h1
ECharts标题 Title 配置
var myChart=echarts.init(document.getElementById('main')); //init初始化接口,返回ECharts实例,其中dom为图表所在节点 var option = { //标题 title : { show:true,//显示策略,默认值true,可选为:true(显示) | false(隐藏) text: '主标题',//主标题文本,'\n'
安德玛
2022/03/09
1.8K0
Android去掉title:windowNoTitle
但是以上文件改动生效的前提是Manifest.xml中的添加:android:theme=”@style/AppTheme”
全栈程序员站长
2022/07/19
1.6K0
Vue.js入门
Vue.js是当下很火的一个JavaScript MVVM库,它是以数据驱动和组件化的思想构建的。
Vincent-yuan
2020/07/06
1.8K0
Node.js 连接 MongoDB--查询分页和连接
如果要设置指定的返回条数可以使用limit()方法,该方法只接受一个参数,指定了返回的条数。
陈不成i
2021/07/13
2.2K0
点击加载更多

相似问题

在Jenkins CLI中添加作业

12

收到新作业时取消Jenkins作业

10

如果将Jenkins作业排队的TFS生成定义已取消,则取消Jenkins作业

129

Trigger Jenkins构建cli,嵌套作业

12

Jenkins -用于更改创建的Jenkins作业中的凭据的CLI/Rest API

18
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档