event.srcElement获得引发事件的控件(表单)
<1>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
function getInput() {
var inputs = document.getElementsByTagName("input"); //取得全部的input表单
for (var i = 0; i < inputs.length; i++) { //遍历全部的input表单
var inputName = inputs[i]; //获得当前遍历到的input表单 inputName.value = "哈哈"; //将当前的input表单value属性赋值“哈哈”
inputName.onclick = btnClick; //给遍历到的当前表单注冊onclick事件,事件的处理函数为btnClick
//注意我这里仅仅是给inputName的onclick事件指定了一个处理函数btnClick,详细函数怎样定义,则会写在下面btnClick()函数中
}
} //vet是一个对象(事实上就是event,名字能够随便起)如今我将它作为一个參数来传递,它就是指控件触发的事件的状态,既然他是一个对象,它肯定有一些属性的,当中就包括了srcElement,或者火狐中的target,还有些onclick等事件
function btnClick(evt) {
var inputs = document.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++) {
var inputName = inputs[i]; //在IE 中srcElement 表示产生事件的源,比方是哪个按钮触发的onclick 事件,火狐中则是target。
//window.event.srcElement取得引发onclick事件的控件(表单元素)。在火狐中srcElement无效(要用target) var obj = evt.srcElement ? evt.srcElement : evt.target; if (inputName == theEvent.target) { //假设当前表单就是引发事件的控件,就将当前表单的value值设为“我被点击了”,否则设为“哈哈”
inputName.value = "我被点击了";
}
else {
inputName.value = "哈哈";
}
}
}
</script>
</head>
<!--在页面载入完成后就会触发onload事件,onload事件就会调用getInput()函数,从而给全部的input表单的value赋值为“哈哈”-->
<body onload="getInput()">
<form>
<input type="button" />
<input type="button" />
<input type="button" />
<input type="button" />
</form>
</body>
</html>
http://blog.csdn.net/cyxlzzs/article/details/6711924
简写
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="Jquery/jquery-1.10.2.js" type="text/javascript"></script>
<script type="text/javascript">
function getInput() {
var inputs = document.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++) {
inputs[i].value = "哈哈";
inputs[i].onclick = function (evt) {
var inputs = $("input"); //等同于document.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++) {
if (inputs[i] == evt.target) { //注意==号,别写成了=
inputs[i].value = "我被点击了";
}
else {
inputs[i].value = "哈哈";
}
}
};
}
}
</script>
</head>
<body onload="getInput()">
<input type="button" />
<input type="button" />
<input type="button" />
</body>
</html>
event.srcElement获得引发事件的控件(表单)的更多相关文章
- [转载]WebBrowser控件表单(form)的自动填写和提交
话说有了WebBrowser类,终于不用自己手动封装SHDocVw的AxWebBrowser这个ActiveX控件了.这个类如果仅仅作为一个和IE一模一样浏览器,那就太没意思了(还不如直接用IE呢). ...
- 淘宝(阿里百川)手机客户端开发日记第十四篇 jsp提交含有上传控件表单乱码问题
今天我来总结昨天开发的一个简单的jsp web 应用程序时,在做一个调教表单,从servlet端获取数据,这个表单里含有上传文件控件.如果我们在测试的时候,获取数据的是乱码,这时,大家可以先去掉上传控 ...
- Error-ASP.NET:由于未能找到 id 为“FileUpload1$gvFiles$ctl02$lnkBtnRemoveFile”的控件或在回发后将同一 ID 分配给另一个控件,导致发生错误。如果未分配 ID,请显式设置引发回发事件的控件的 ID 属性以避免此错误。
ylbtech-Error-ASP.NET:由于未能找到 id 为“FileUpload1$gvFiles$ctl02$lnkBtnRemoveFile”的控件或在回发后将同一 ID 分配给另一个控件 ...
- Python pyQt4/pyQt5 学习笔记1(空白窗口,按钮,控件事件,控件提示,窗体显示到屏幕中间,messagebox)
PyQt4是用来编写有图形界面程序(GUI applications)的一个工具包.PyQt4作为一个Python模块来使用,它有440个类和超过6000种函数和方法.同时它也是一个可以在几乎所有主流 ...
- FileUpload控件实现单按钮图片自动上传并带预览显示
FileUpload控件实现单按钮图片自动上传并带预览显示 1.实现原理: FileUpload控件默认不支持服务端的ONCHANGE事件,此时用一种变通的方法借用客户端的onchange事件,调 ...
- Qt的事件模型(5种使用办法,通常重新实现event handler即可。只有定义控件才需要管理信号的发射)
Qt的事件模型 1.事件的概念 应用程序对象将系统消息接收为 Qt 事件.应用程序可以按照不同的粒度对事件加以监控.过滤并做出响应. 在 Qt 中,事件是指从 QEvent继承 的对象.Qt将事件发送 ...
- ASP.NET - 自定义控件处理页面事件(控件与页面数据交互)的方法
//用委托的方法实现 //控件代码 public delegate void DelegateFunction( string sPageTitle ); private DelegateFuncti ...
- Android自己定义控件2-简单的写字板控件
概述 上一篇文章我们对自己定义控件进行了一个大体的知识介绍. 今天就来学习自己定义一个简单的写字板控件. 先来看看效果图 就是简单的依据手指写下的轨迹去画出内容 实现 在上一篇文章里提到了androi ...
- 2014-07-23 利用ASP.NET自带控件实现单文件上传与下载
效果图 上传文件页面: 下载文件页面: 1.母版页site.Master <%@ Master Language="C#" AutoEventWireup="tr ...
随机推荐
- 基于CAShapeLayer和贝塞尔曲线的圆形进度条动画【装载】
初次接触CAShapeLayer和贝塞尔曲线,看了下极客学院的视频.对初学者来说感觉还不错.今天来说一个通过CAShapeLayer和贝塞尔曲线搭配的方法,创建的简单的圆形进度条的教程先简单的介绍下C ...
- c++,派生类对象可以对基类赋值,基类对派生类不可以赋值
派生类对象可以对基类对象赋值,赋值时属于派生类独有的部分就舍弃不用. #include <iostream> using namespace std; class DemoA { publ ...
- ThinkPHP分页类
第一种:利用Page类和limit方法 $User = M('User'); // 实例化User对象$count = $User->where('status=1')->cou ...
- Chapter 7 代理模式
代理模式:为其它对象提供一种代理以控制对这个对象的访问. 代码: package xiao; class Girl{ private String name; public void setName( ...
- 为什么国内的网盘公司都在 TB 的级别上竞争,成本会不会太高?(还有好多其它回复)
作者:杜鑫链接:http://www.zhihu.com/question/21591490/answer/18762821来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处 ...
- thinkphp 分组、页面跳转与ajax
本节课大纲: 一.多应用配置技巧 二.使用分组 三.页面跳转 $this->success('查询成功',U('User/test')); $this->redirect('User/te ...
- 基于visual Studio2013解决算法导论之015第二小元素
题目 查找第二小元素 解决代码及点评 #include <stdio.h> #include <stdlib.h> #include <malloc.h> ...
- R语言RJava安装步骤
1.安装JDK 2.在R下运行install.packages("rJava") 2.环境变量设置 CLASSPATH=xxx\R-xxx\library\rJava\jri ...
- Hibernate 3中如何获得库表所有字段的名称
15问:Hibernate 3中如何获得库表所有字段的名称 答:可以使用以下的程序获得. Configuration conf = new Configuration(); conf.configur ...
- 基于visual Studio2013解决C语言竞赛题之0801信息输出
题目