<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获得引发事件的控件(表单)的更多相关文章

  1. [转载]WebBrowser控件表单(form)的自动填写和提交

    话说有了WebBrowser类,终于不用自己手动封装SHDocVw的AxWebBrowser这个ActiveX控件了.这个类如果仅仅作为一个和IE一模一样浏览器,那就太没意思了(还不如直接用IE呢). ...

  2. 淘宝(阿里百川)手机客户端开发日记第十四篇 jsp提交含有上传控件表单乱码问题

    今天我来总结昨天开发的一个简单的jsp web 应用程序时,在做一个调教表单,从servlet端获取数据,这个表单里含有上传文件控件.如果我们在测试的时候,获取数据的是乱码,这时,大家可以先去掉上传控 ...

  3. Error-ASP.NET:由于未能找到 id 为“FileUpload1$gvFiles$ctl02$lnkBtnRemoveFile”的控件或在回发后将同一 ID 分配给另一个控件,导致发生错误。如果未分配 ID,请显式设置引发回发事件的控件的 ID 属性以避免此错误。

    ylbtech-Error-ASP.NET:由于未能找到 id 为“FileUpload1$gvFiles$ctl02$lnkBtnRemoveFile”的控件或在回发后将同一 ID 分配给另一个控件 ...

  4. Python pyQt4/pyQt5 学习笔记1(空白窗口,按钮,控件事件,控件提示,窗体显示到屏幕中间,messagebox)

    PyQt4是用来编写有图形界面程序(GUI applications)的一个工具包.PyQt4作为一个Python模块来使用,它有440个类和超过6000种函数和方法.同时它也是一个可以在几乎所有主流 ...

  5. FileUpload控件实现单按钮图片自动上传并带预览显示

    FileUpload控件实现单按钮图片自动上传并带预览显示 1.实现原理:   FileUpload控件默认不支持服务端的ONCHANGE事件,此时用一种变通的方法借用客户端的onchange事件,调 ...

  6. Qt的事件模型(5种使用办法,通常重新实现event handler即可。只有定义控件才需要管理信号的发射)

    Qt的事件模型 1.事件的概念 应用程序对象将系统消息接收为 Qt 事件.应用程序可以按照不同的粒度对事件加以监控.过滤并做出响应. 在 Qt 中,事件是指从 QEvent继承 的对象.Qt将事件发送 ...

  7. ASP.NET - 自定义控件处理页面事件(控件与页面数据交互)的方法

    //用委托的方法实现 //控件代码 public delegate void DelegateFunction( string sPageTitle ); private DelegateFuncti ...

  8. Android自己定义控件2-简单的写字板控件

    概述 上一篇文章我们对自己定义控件进行了一个大体的知识介绍. 今天就来学习自己定义一个简单的写字板控件. 先来看看效果图 就是简单的依据手指写下的轨迹去画出内容 实现 在上一篇文章里提到了androi ...

  9. 2014-07-23 利用ASP.NET自带控件实现单文件上传与下载

    效果图 上传文件页面: 下载文件页面:  1.母版页site.Master <%@ Master Language="C#" AutoEventWireup="tr ...

随机推荐

  1. 基于CAShapeLayer和贝塞尔曲线的圆形进度条动画【装载】

    初次接触CAShapeLayer和贝塞尔曲线,看了下极客学院的视频.对初学者来说感觉还不错.今天来说一个通过CAShapeLayer和贝塞尔曲线搭配的方法,创建的简单的圆形进度条的教程先简单的介绍下C ...

  2. c++,派生类对象可以对基类赋值,基类对派生类不可以赋值

    派生类对象可以对基类对象赋值,赋值时属于派生类独有的部分就舍弃不用. #include <iostream> using namespace std; class DemoA { publ ...

  3. ThinkPHP分页类

    第一种:利用Page类和limit方法 $User = M('User'); // 实例化User对象$count      = $User->where('status=1')->cou ...

  4. Chapter 7 代理模式

    代理模式:为其它对象提供一种代理以控制对这个对象的访问. 代码: package xiao; class Girl{ private String name; public void setName( ...

  5. 为什么国内的网盘公司都在 TB 的级别上竞争,成本会不会太高?(还有好多其它回复)

    作者:杜鑫链接:http://www.zhihu.com/question/21591490/answer/18762821来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处 ...

  6. thinkphp 分组、页面跳转与ajax

    本节课大纲: 一.多应用配置技巧 二.使用分组 三.页面跳转 $this->success('查询成功',U('User/test')); $this->redirect('User/te ...

  7. 基于visual Studio2013解决算法导论之015第二小元素

     题目 查找第二小元素 解决代码及点评 #include <stdio.h> #include <stdlib.h> #include <malloc.h> ...

  8. R语言RJava安装步骤

     1.安装JDK 2.在R下运行install.packages("rJava") 2.环境变量设置 CLASSPATH=xxx\R-xxx\library\rJava\jri ...

  9. Hibernate 3中如何获得库表所有字段的名称

    15问:Hibernate 3中如何获得库表所有字段的名称 答:可以使用以下的程序获得. Configuration conf = new Configuration(); conf.configur ...

  10. 基于visual Studio2013解决C语言竞赛题之0801信息输出

     题目