<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. UDP包结构

    UDP包结构  // 参考: http://www.2cto.com/net/201307/224715.html UDP数据包由首部和数据组成,每行4个字节(32位),首部固定长度为8个字节(2行) ...

  2. java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource解决方法

    java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource解决方法 只需把这三个commons-pool.jar ...

  3. Linux下通过rm -f删除大量文件时提示"-bash: /bin/rm: Argument list too long"的解决方法

    Linux下通过rm -f删除/var/spool/postfix/maildrop/中大量的小文件时提示: "-bash: /bin/rm: Argument list too long& ...

  4. CSS Filter

    支持的效果有: blur(模糊) grayscale(灰度) drop-shadow(阴影) sepia(褐色滤镜) brightness(亮度) contrast(对比) hue-rotate(色相 ...

  5. ORACLE存储过程笔记3

    ORACLE存储过程笔记3 流程控制 1.条件   if expression thenpl/sql or sqlend if;   if expression thenpl/sql or sqlel ...

  6. WPF中StringFormat 格式化 的用法

    原文 WPF中StringFormat 格式化 的用法 网格用法 <my:DataGridTextColumn x:Name="PerformedDate" Header=& ...

  7. 网站开启gzip的方法

    .如果空间支持Zlib压缩文件,可用php.ini方法 这个方法比较简单,压缩率也较高,可达75%左右.新建一个名为 php.ini 的文件,添加以下代码,保存后上传至网站根目录即可. output_ ...

  8. java Hastable使用

    jdk:http://docs.oracle.com/javase/1.4.2/docs/api/java/util/Hashtable.html Hashtable numbers = new Ha ...

  9. Python之路day4

    坚持就是胜利.今天零下14度,从教室出来的路上真的很冷很冷,希望这个冬天自己不会白过,春暖花开的时候一定要给世界一个更好的自己. 原本以为day3的作业自己做得挺好的,没想到只得了B+.必须要加油了, ...

  10. Data Annotation

    Data Annotation 什么是Data Annotation ? 如何使用 ? 自定义Validate Attribute EF  Db first中使用Data Annotation asp ...