通过onmousedown和onclick 使 按钮 只响应 鼠标点击 事件
2007-06-28 09:00
645 查看
其目的大概与 之前一篇文章
屏蔽Button按钮对Enter回车键的响应 及实现Enter->Tab效果
相似
都是为了防止
按钮对回车键等非点击动作
进行响应 而引起不必要的误操作
========== 前台页面 ============
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3" %>
<!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 runat="server">
<title>无标题页</title>
<script language="javascript" type="text/javascript">
var nowMouseClick = "";
function fn_onmousedown()
{
nowMouseClick = event.srcElement.id;
}
function fn_onclick()
{
if(nowMouseClick == event.srcElement.id)
{
nowMouseClick = "";
return true;
}
else
{
if(event.srcElement.id == "ImageButton1")
{
document.all.Button1.focus();
}
else if(event.srcElement.id == "Button1")
{
document.all.Text1.focus();
}
return false;
}
}
function fn_Text1_onkeydown()
{
if(event.keyCode==13)
{
document.all.Text2.focus();
event.keyCode = 0;
event.returnValue = false;
}
}
function fn_Text2_onkeydown()
{
if(event.keyCode==13)
{
document.all.ImageButton1.focus();
event.keyCode = 0;
event.returnValue = false;
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<input id="Text1" type="text" onkeydown="fn_Text1_onkeydown();"/>
<input id="Text2" type="text" onkeydown="fn_Text2_onkeydown();"/>
<br />
<asp:ImageButton ID="ImageButton1" runat="server" OnClick="ImageButton1_Click" />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
</form>
</body>
</html>
========= 后台代码 =============
public partial class Default3 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
this.ImageButton1.Attributes.Add("onmousedown", "fn_onmousedown();");
this.ImageButton1.Attributes.Add("onclick", "return fn_onclick();");
this.Button1.Attributes.Add("onmousedown", "fn_onmousedown();");
this.Button1.Attributes.Add("onclick", "return fn_onclick();");
}
protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
Response.Write("ImageButton1 serve event");
}
protected void Button1_Click(object sender, EventArgs e)
{
Response.Write("Button1 serve event");
}
}
屏蔽Button按钮对Enter回车键的响应 及实现Enter->Tab效果
相似
都是为了防止
按钮对回车键等非点击动作
进行响应 而引起不必要的误操作
========== 前台页面 ============
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3" %>
<!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 runat="server">
<title>无标题页</title>
<script language="javascript" type="text/javascript">
var nowMouseClick = "";
function fn_onmousedown()
{
nowMouseClick = event.srcElement.id;
}
function fn_onclick()
{
if(nowMouseClick == event.srcElement.id)
{
nowMouseClick = "";
return true;
}
else
{
if(event.srcElement.id == "ImageButton1")
{
document.all.Button1.focus();
}
else if(event.srcElement.id == "Button1")
{
document.all.Text1.focus();
}
return false;
}
}
function fn_Text1_onkeydown()
{
if(event.keyCode==13)
{
document.all.Text2.focus();
event.keyCode = 0;
event.returnValue = false;
}
}
function fn_Text2_onkeydown()
{
if(event.keyCode==13)
{
document.all.ImageButton1.focus();
event.keyCode = 0;
event.returnValue = false;
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<input id="Text1" type="text" onkeydown="fn_Text1_onkeydown();"/>
<input id="Text2" type="text" onkeydown="fn_Text2_onkeydown();"/>
<br />
<asp:ImageButton ID="ImageButton1" runat="server" OnClick="ImageButton1_Click" />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
</form>
</body>
</html>
========= 后台代码 =============
public partial class Default3 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
this.ImageButton1.Attributes.Add("onmousedown", "fn_onmousedown();");
this.ImageButton1.Attributes.Add("onclick", "return fn_onclick();");
this.Button1.Attributes.Add("onmousedown", "fn_onmousedown();");
this.Button1.Attributes.Add("onclick", "return fn_onclick();");
}
protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
Response.Write("ImageButton1 serve event");
}
protected void Button1_Click(object sender, EventArgs e)
{
Response.Write("Button1 serve event");
}
}
相关文章推荐
- 通过onmousedown和onclick 使 按钮 只响应 鼠标点击 事件
- 点击TButton后的执行OnClick和OnMouseDown两个事件的过程(其实是通过WM_COMMAND执行程序员的代码)
- 解决通过UIAlertView按钮点击事件pop回上级页面键盘会响应问题
- 让一个按钮自动触发,自动执行onclick鼠标单击事件. 默认已点击.
- 在Activity中响应ListView内部按钮的点击事件的两种方法!!!
- listView布局中按钮点击事件放到activity或者fragment中响应
- QT鼠标点击响应事件
- 如何使用SendMessage函数实现模拟鼠标点击按钮事件?
- 监听鼠标移动和点击事件并且通过发送广播的形式发出这个绝对坐标
- 发现Delphi.XE2.Update3 上使用 FireMonkey 开发,对 TImage3D 连续多次点击后,OnClick事件就不响应的解决
- js鼠标事件/onclick/鼠标点击/光标移开
- Android - Button(按钮)的响应点击事件的4种写法
- 【转】Android - Button(按钮)的响应点击事件的4种写法
- SDI里添加按钮并响应点击事件
- UIActionSheet 按钮不响应点击事件的解决方法
- UIActionSheet 按钮不响应点击事件的解决方法
- cocos2dx多个按钮同时响应点击事件
- 点击表格的单元格时实现变颜色,通过for循环为每个单元格添加一个onclick事件
- 鼠标点击事件按钮和触电坐标
- 在Activity中响应ListView内部按钮的点击事件的两种方法