Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何让IE的Javascript实现“this”关键字功能?

如何让IE的Javascript实现“this”关键字功能?
EN

Stack Overflow用户
提问于 2010-04-11 19:51:09
回答 2查看 1.2K关注 0票数 2

Internet Explorer是否有解决方法来实现'this‘javascript关键字提供的功能,以获取触发事件的dom元素?

我的问题场景是:在html表单中有数量可变的文本字段,例如

代码语言:javascript
运行
AI代码解释
复制
<input type="text" id="11"/>  
<input type="text" id="12"/>

。。

我需要为每个文本字段处理"onchange“事件,而处理依赖于触发该事件的字段的”id“。到目前为止,我知道我的选择是: 1)为每个文本字段附加一个专用的事件处理程序。所以如果我有n个字段,我就有n个不同的函数,如下所示:

代码语言:javascript
运行
AI代码解释
复制
<input type="text" id="11" onchange="function11();"/>  
<input type="text" id="12" onchange="function12();"/>

但是文本字段是动态添加和删除的,所以更好的方法是使用一个泛型函数。

2)使用'this‘关键字,如:

代码语言:javascript
运行
AI代码解释
复制
<input type="text" id="11" onchange="functionGeneric(this);"/>  
<input type="text" id="12" onchange="functionGeneric(this);"/>

但此选项不适用于Internet Explorer。

有没有人能建议一种变通方法,让它在IE中工作,或者其他一些可以在这里应用的解决方案?谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-04-11 20:51:41

我不能重现你的问题。以下是基于评论中的最新信息的SSCCE

代码语言:javascript
运行
AI代码解释
复制
<!doctype html>
<html lang="en">
    <head>
        <title>SO question 2618458</title>
        <script>
            function functionGeneric(id) {
                alert(id); // Shows either 11 or 12 correctly.
            }
        </script>
    </head>
    <body>
        <input type="text" id="text_11" onchange="functionGeneric(this.id.split('_')[1]);"/>  
        <input type="text" id="text_12" onchange="functionGeneric(this.id.split('_')[1]);"/>
    </body>
</html>

它在我这里的所有主要浏览器中都工作得很好。你的实际问题出在别的地方。在您提出更多细节或更好的SSCCE之前,它是在暗中寻找根本原因。

票数 3
EN

Stack Overflow用户

发布于 2010-04-11 19:55:52

第二个选项可能不起作用,因为元素ID必须以字母或下划线字符开头(至少根据规范)。

我会选择这样的东西:

代码语言:javascript
运行
AI代码解释
复制
// make the ids start with a word, like "foo", followed by "_", followed by a number
$("input[id^='foo_']").change(function() {
    doSomething(this.id.split("_")[1]); // extract the number, pass to function
});

这将为ID为starting with 'foo‘的所有输入附加一个更改处理程序,并将数字从ID中分离出来,以传递给处理该数字的泛型函数。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2618458

复制
相关文章
JavaScript实现本地图片上传预览功能(兼容IE、chrome、FF)
摘要 本人个人nodejs分享论坛:tnodejs.com 参考:http://blog.csdn.net/nhconch/article/details/7295456 需要解决的问题有:本地图片如何在上传前预览、编辑; 最近发现这个功能很多是基于flash实现的,很多JavaScript实现的代码兼容性都很差,特别是在IE和firefox和chrome三个浏览器上不兼容。 代码实现主要利用到jquery插件imgAreaSelect,FileReader对象(chrome和ff获取本地图片数据的接口)
蛋未明
2018/06/07
1.9K0
如何让bootstrap兼容ie8+
想必做前端开发的都应该听说过Bootstrap, 一款优秀的前端开发框架。前段时间博主做的一个项目便尝试着用了boostrap来搭建,确定非常快,而且响应式做的特别好,省去了许多麻烦。不过由于我用的是Bootstrap 3.0,结果发现在ie8下崩掉了,心塞啊!又翻出bootstrap官方API,细读之……这才明白由于bootstrap做响应式所用的栅格布局在ie8下不被支持,而且也不支持html5的新标签和css3的一些效果,如圆角、阴影、一些过渡效果等……翻了好多教程,总结出以下方法,与大家分享!
零式的天空
2022/03/22
1.2K0
JavaScript实现显示在线时间的功能
<script type="text/javascript"> function showTime(){ var divOne=document.getElementById("one"); var d=new Date(); var timStr=d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate()+" "+ d.getHours()+":"+d.getMinutes()+":"+d.getSeconds()+":"+d.getMilliseconds(); divOne.innerHTML=timStr; setInterval(function(){ d=new Date(); timStr=d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate()+" "+ d.getHours()+":"+d.getMinutes()+":"+d.getSeconds()+":"+d.getMilliseconds(); divOne.innerHTML=timStr; }, 1)//表示每隔1毫秒刷新一次,如果你上面没有使用d.getMilliseconds(),即没有调用毫秒的方法,这里可以改成每隔1000毫秒刷新一次 } </script> </head> <body> <input type="button" value="显示时间" οnclick="showTime()"> <div id="one"></div> </body>
小小鱼儿小小林
2020/06/23
9350
JavaScript实现超时调用的功能
<script type="text/javascript"> function showMsg(){ alert("1秒之后会有新的提示"); //延时调用,只调用一次 setTimeout(function(){ alert("我就是惊喜"); }, 1000)//表示延时1000毫秒,可以改成其他的时间段 } </script> </head> <body> <input type="button" value="点击我,有惊喜" οnclick="showMsg()"> </body>
小小鱼儿小小林
2020/06/23
5490
JavaScript中的with关键字
原文:http://luopq.com/2016/02/14/js-with-keyword/
疯狂的技术宅
2019/03/28
1.4K0
JavaScript 关键字
JavaScript 同样保留了一些关键字,这些关键字在当前的语言版本中并没有使用,但在以后 JavaScript 扩展中会用到。
陈不成i
2021/07/15
3400
JavaScript this 关键字
但在 JavaScript 中 this 不是固定不变的,它会随着执行环境的改变而改变。
陈不成i
2021/07/19
2090
JavaScript中的this关键字
this的值:当前执行代码的环境对象,this的指向不取决于它在什么位置创建,完全取决于函数在什么地方被调用,this不能在执行期间被赋值,并且在每次函数被调用时this的值也可能会不同。
w候人兮猗
2020/07/01
6180
「原生案例」如何在JavaScript中实现实时搜索功能
无论您是经验丰富的开发人员还是刚开始编码之旅的新手,本文旨在为您提供一般编码知识和工具,以便将实时搜索功能融入到您的项目中。通过本指南的学习,您将对相关概念和技术有扎实的理解,从而能够创建响应式和交互式的搜索功能,实现用户输入时动态更新的效果。
前端达人
2023/10/22
1.4K0
「原生案例」如何在JavaScript中实现实时搜索功能
JavaScript this关键字
JavaScript this 关键字 什么是 this JavaScript中的 this 关键字指的是它所属的对象 拥有不同的值,具体取决于使用this关键字的位置 在方法中,this指的是(方法)所有者的对象 在单独的情况下,this指的是全局对象 在函数中,this指的是全局对象(严格模式:undefined) 在事件中,this指的是接收事件的对象 方法中的 this fullName : function() { return this.firstName +
Mirror王宇阳
2020/11/12
3290
javascript实现倒计时功能
javascript实现倒计时功能 不知道从哪扒拉的代码代码了 侵删 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/1.9.1/jquery.min.js"></script> <script type="text/javascript">
周杰伦本人
2022/10/25
6140
javascript实现倒计时功能
让你的IE也支持placeholder属性
placeholder属性是html5新加入的,所以非现代浏览器当然不会支持了。 已有牛人写了一下jquery插件实现了placeholder
老高的技术博客
2022/12/27
7150
JavaScript对象怎么实现迭代(iterator)功能?
可迭代对象, 需要具备 Symbol.iterator 和 next 这两个函数,即可用 for...of 进行迭代。譬如:String、Array、TypedArray、Map 和 Set,都是可迭代对象。
Learn-anything.cn
2021/12/20
2610
解析javascript关键字this
this是javascript语言的一个关键字。它可以是全局对象、当前对象或者任意对象,这完全取决于函数的调用方式。下面我们将按照调用方式的不同,分别讨论 this 的含义。
IMWeb前端团队
2019/12/04
3510
解析javascript关键字this
JavaScript实现全屏和退出全屏功能
转载本站文章《JavaScript实现全屏和退出全屏功能》, 请注明出处:https://www.zhoulujun.cn/html/webfront/SGML/html5/2016_0616_8229.html
周陆军博客
2023/05/07
3.3K0
解析javascript关键字this
this是javascript语言的一个关键字。它可以是全局对象、当前对象或者任意对象,这完全取决于函数的调用方式。下面我们将按照调用方式的不同,分别讨论 this 的含义。 作为普通函数调用
IMWeb前端团队
2017/12/29
4960
解析javascript关键字this
JavaScript 保留关键字
所有的现代浏览器完全支持 ECMAScript 3(ES3,JavaScript 的第三版,从 1999 年开始)。
陈不成i
2021/07/19
4470
如何实现选中复制的功能
它一般可以使用第三方库 clipboard.js[1] 来实现,源码很简单,可以读一读
山月
2020/06/04
2.5K0
点击加载更多

相似问题

JSON/JavaScript功能/实现

23

让Google Chrome忽略IE Javascript

31

IE未实现javascript错误

10

如何在AngularJS中实现“让我登录”功能

12

如何实现Javascript承诺的3个功能?

51
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文