JavaScript 使用技巧精萃(.net html


Posted in Javascript onApril 25, 2009

(一).确认删除用法:
1. BtnDel.Attributes.Add("onclick","return confirm('"+"确认删除?"+"')");
2. linktempDelete.Attributes["onclick"]="javascript:return confirm('"+"确认删除?"+"');";
3. private void grdProject_ItemDataBound(object sender, DataGridItemEventArgs e)
4.
{
if ((e.Item.ItemType == ListItemType.Item) | (e.Item.ItemType == ListItemType.AlternatingItem))
{
// ?h除按?上的提示部分
e.Item.Cells[10].Attributes.Add("onclick", "return confirm('确定删除吗?');");
}
}
5.
<script language="JavaScript" type="text/JavaScript">
function delete_y(e)
{
if(event.srcElement.outerText == "删除")
event.returnValue=confirm("确定删除?");
}
document.onclick=delete_y;
</script>
(二).跨语言字符串替换
System.Text.RegularExpressions.Regex.Replace(str1,@" <{1}[^ <>]*>{1}","").Replace(" ","").Replace("\","\\").Replace("-","-").Replace("&","&").Replace("<"," <").Replace(">",">").Replace("br","\n");
(三).关闭窗体
1.
this.btnClose.Attributes.Add("onclick", "window.close();return false;");
2.关闭本窗体间跳转到另一个页面
this.HyperLink1.NavigateUrl = "javascript:onclick=window.opener.location.assign
('" + "index.aspx"+ "?&Func=Edit&AutoID=" + intAutoid + ');window.close();";
3.关闭父窗体:
<INPUT type="reset" value=' <%=this._Cancel%>' onclick="window.parent.close()" Class="Button">
4.关闭本弹出窗体,并刷新父页面
this.Response.Write(" <script language='javascript'>window.opener.location.reload();window.close(); </script>");
(四).Web MessageBox
1.
Response.Write(" <script language=javascript> window.alert('保存成功1'); </script>");
2.
Response.Write(" <script>alert('"+"保存成功!"+"'); </script>");
3.
this.Page.RegisterStartupScript("ChiName"," <script language='javascript'>alert('" + "保存成功!" + "') </script>");
(五).DataGrid中加CheckBox控件模板列.
请看: http://blog.csdn.net/chengking/archive/2005/10/08/497520.aspx
(六). window.open() 方法
语法:window.open(pageurl,name,parameters);
window对象的open()方法用于创建一个新的窗口实例,新创建的窗口的外观由参数:parameters指定。新窗口中打开的文档由参数: pageurl指定。系统能够根据参数:name确定的名称访问该窗口。
下表为parameters参数表:
参数 衩始值 说明
alwaysLowered yes/no 指定窗口隐藏在所有窗口之下。
alwaysRaised yes/no 指定窗口浮在所有窗口之上。
dependent yes/no 指定打开的窗口为父窗口的一个了窗口。并随父窗口的关闭而关闭。
directions yes/no 指定Navigator 2和3的目录栏是否在新窗口中可见。
height pixel value 设定新窗口的像素高度。
hotkeys yes/no 在没有菜单栏的新窗口设置安全退出热键。
innerHeight pixel value 设置新窗口中文档的像素高度。
innerWidth pixel value 设置新窗口中文档的像素宽度。
location yes/ no 指明位置栏在新窗口中是否可见。
menubar yes /no 指明菜单栏在新窗口中是否可见。
outerHeight pixel value 设定窗口(包括装饰边框)的像素高度。
outerWidth pixel value 设定窗口(包括装饰边框)的像素宽度。
resizable yes /no 指明新窗口是否可以调整。
screenX pixel value 设定新窗口离屏幕边界的像素长度。
screenY pixel value 设定新窗口离屏幕上边界的像素长度。
scrollbars yes /no 指明滚动栏在新窗口中是否可见。
titlebar yes /no 指明菜单题目栏在新窗口是否可见。
toolbar yes /no 指明工具栏在新窗口中是否可见。
Width pixel value 设定窗口的像素宽度。
z-look yes /no 在文档中包含各个 <pplet>标签的数组。
fullscreen yes / no 打开的窗体是否进行全屏显示
left pixel value 设定新窗口距屏幕左方的距离
top pixel value 设定新窗口距屏幕上方的距离
例子:
<html>
<head>
<title>window.open函数 </title>
</head>
<body>
<script language="javascript">
<!--
window.open("","name1","width=100,height=200,toolbar=no,scrollbars=no,menubar=no,screenX=100,screenY=100");
//-->
</script>
</body>
</html>
(七).location对象
href 整个URL字符串.
protocol 含有URL第一部分的字符串,如http:
host 包含有URL中主机名:端口号部分的字符串.如//www.cenpok.net/server/
hostname 包含URL中主机名的字符串.如http://www.cenpok.net
port 包含URL中可能存在的端口号字符串.
pathname URL中"/"以后的部分.如~list/index.htm
hash "#"号(CGI参数)之后的字符串.
search "?"号(CGI参数)之后的字符串.
(八).按键捕捉
1.Ctrl+Enter按键捕捉方法
<body onkeydown="doKeyDown()">
<script language="JavaScript">
<!--
function doKeyDown()
{
if (event.ctrlKey && event.keyCode == 13)
{
alert("You pressed the Ctrl + Enter")
}
}
//-->
</script>
</body>
2.Alt加快捷键: Alt+A
<button accessKey=A title="Alt+A" onclick="alert('Button clicked!')">Alt+A </button>
(九).控制输入,非法字符不能输入到TextBox.
<asp:textbox class="Text"
onkeypress="if (event.keyCode < 48 || event.keyCode >57) event.returnValue = false;"
id="txtY_Revenue" style="TEXT-ALIGN: right" runat="server" Width="90%" MaxLength="12">
</asp:textbox>
说明: 此方法控制TextBox只收数字:0~9 , 也自可以定义其它可输入字符,如改成: 65~123,只允许输入: a~z和A~Z 等.
[以下为收藏]
1>屏蔽功能类
1.1 屏蔽键盘所有键
<script language="javascript">
<!--
function document.onkeydown(){
event.keyCode = 0;
event.returnvalue = false;
}
-->
</script>
1.2 屏蔽鼠标右键
在body标签里加上oncontextmenu=self.event.returnvalue=false
或者
<script language="javascript">
<!--
function document.oncontextmenu()
{
return false;
}
-->
</script>
function nocontextmenu()
{
if(document.all) {
event.cancelBubble=true;
event.returnvalue=false;
return false;
}
}
或者
<body onmousedown="rclick()" oncontextmenu= "nocontextmenu()">
<script language="javascript">
<!--
function rclick()
{
if(document.all) {
if (event.button == 2){
event.returnvalue=false;
}
}
}
-->
</script>
1.3 屏蔽 Ctrl+N、Shift+F10、F5刷新、退格键
<script language="javascript">
<!--
//屏蔽鼠标右键、Ctrl+N、Shift+F10、F5刷新、退格键
function window.onhelp(){return false} //屏蔽F1帮助
function KeyDown(){
if ((window.event.altKey)&&
((window.event.keyCode==37)|| //屏蔽 Alt+ 方向键 ←
(window.event.keyCode==39))){ //屏蔽 Alt+ 方向键 →
alert("不准你使用ALT+方向键前进或后退网页!");
event.returnvalue=false;
}
/* 注:这还不是真正地屏蔽 Alt+ 方向键,
因为 Alt+ 方向键弹出警告框时,按住 Alt 键不放,
用鼠标点掉警告框,这种屏蔽方法就失效了。以后若
有哪位高手有真正屏蔽 Alt 键的方法,请告知。*/
if ((event.keyCode == 8) &&
(event.srcElement.type != "text" &&
event.srcElement.type != "textarea" &&
event.srcElement.type != "password") || //屏蔽退格删除键
(event.keyCode==116)|| //屏蔽 F5 刷新键
(event.ctrlKey && event.keyCode==82)){ //Ctrl + R
event.keyCode=0;
event.returnvalue=false;
}
if ((event.ctrlKey)&&(event.keyCode==78)) //屏蔽 Ctrl+n
event.returnvalue=false;
if ((event.shiftKey)&&(event.keyCode==121)) //屏蔽 shift+F10
event.returnvalue=false;
if (window.event.srcElement.tagName == "A" && window.event.shiftKey)
window.event.returnvalue = false; //屏蔽 shift 加鼠标左键新开一网页
if ((window.event.altKey)&&(window.event.keyCode==115)){ //屏蔽Alt+F4
window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
return false;}
}
/* 另外可以用 window.open 的方法屏蔽 IE 的所有菜单
第一种方法:
window.open("你的.htm", "","toolbar=no,location=no,directories=no,menubar=no,scrollbars=no,resizable=yes,status=no,top=0,left=0")
第二种方法是打开一个全屏的页面:
window.open("你的.asp", "", "fullscreen=yes")
*/
//-->
</script>
1.4屏蔽浏览器右上角“最小化”“最大化”“关闭”键
<script language=javascript>
function window.onbeforeunload()
{
if(event.clientX>document.body.clientWidth&&event.clientY <0||event.altKey)
{
window.event.returnvalue = "";
}
}
</script>
或者使用全屏打开页面
<script language="javascript">
<!--
window.open(www.32pic.com,"32pic","fullscreen=3,height=100, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no");
-->
</script>
注:在body标签里加上onbeforeunload="javascript:return false"(使不能关闭窗口)
1.5屏蔽F5键
<script language="javascript">
<!--
function document.onkeydown()
{
if ( event.keyCode==116)
{
event.keyCode = 0;
event.cancelBubble = true;
return false;
}
}
-->
</script>
1.6屏蔽IE后退按钮
在你链接的时候用 <a href="javascript:location.replace(url)">
1.7屏蔽主窗口滚动条
在body标签里加上 style="overflow-y:hidden"
1.8 屏蔽拷屏,不断地清空剪贴板
在body标签里加上onload="setInterval('clipboardData.setData(\'Text\',\'\')',100)"
1.9 屏蔽网站的打印功能
<style>
@media print {
* { display: none }
}
</style>
1.10 屏蔽IE6.0 图片上自动出现的保存图标
方法一:
<META HTTP-EQUIV="imagetoolbar" CONTENT="no">
方法二:
<img galleryimg="no">
1.11 屏蔽页中所有的script
<noscrript> </noscript>
2>表单提交验证类
2.1 表单项不能为空
<script language="javascript">
<!--
function CheckForm()
{
if (document.form.name.value.length == 0) {
alert("请输入您姓名!");
document.form.name.focus();
return false;
}
return true;
}
-->
</script>
2.2 比较两个表单项的值是否相同
<script language="javascript">
<!--
function CheckForm()
if (document.form.PWD.value != document.form.PWD_Again.value) {
alert("您两次输入的密码不一样!请重新输入.");
document.ADDUser.PWD.focus();
return false;
}
return true;
}
-->
</script>
2.3 表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等
<script language="javascript">
<!--
function isNumber(String)
{
var Letters = "1234567890-"; //可以自己增加可输入值
var i;
var c;
if(String.charAt( 0 )=='-')
return false;
if( String.charAt( String.length - 1 ) == '-' )
return false;
for( i = 0; i < String.length; i ++ )
{
c = String.charAt( i );
if (Letters.indexOf( c ) < 0)
return false;
}
return true;
}
function CheckForm()
{
if(! isNumber(document.form.TEL.value)) {
alert("您的电话号码不合法!");
document.form.TEL.focus();
return false;
}
return true;
}
-->
</script>
2.4 表单项输入数值/长度限定
<script language="javascript">
<!--
function CheckForm()
{
if (document.form.count.value > 100 || document.form.count.value < 1)
{
alert("输入数值不能小于零大于100!");
document.form.count.focus();
return false;
}
if (document.form.MESSAGE.value.length <10)
{
alert("输入文字小于10!");
document.form.MESSAGE.focus();
return false;
}
return true;
}
//-->
</script>
2.5 中文/英文/数字/邮件地址合法性判断
<SCRIPT LANGUAGE="javascript">
<!--
function isEnglish(name) //英文值检测
{
if(name.length == 0)
return false;
for(i = 0; i < name.length; i++) {
if(name.charCodeAt(i) > 128)
return false;
}
return true;
}
function isChinese(name) //中文值检测
{
if(name.length == 0)
return false;
for(i = 0; i < name.length; i++) {
if(name.charCodeAt(i) > 128)
return true;
}
return false;
}
function isMail(name) // E-mail值检测
{
if(! isEnglish(name))
return false;
i = name.indexOf("@");
j = name.lastIndexOf("@");
if(i == -1)
return false;
if(i != j)
return false;
if(i == name.length)
return false;
return true;
}
function isNumber(name) //数值检测
{
if(name.length == 0)
return false;
for(i = 0; i < name.length; i++) {
if(name.charAt(i) < "0" || name.charAt(i) > "9")
return false;
}
return true;
}
function CheckForm()
{
if(! isMail(form.Email.value)) {
alert("您的电子邮件不合法!");
form.Email.focus();
return false;
}
if(! isEnglish(form.name.value)) {
alert("英文名不合法!");
form.name.focus();
return false;
}
if(! isChinese(form.cnname.value)) {
alert("中文名不合法!");
form.cnname.focus();
return false;
}
if(! isNumber(form.PublicZipCode.value)) {
alert("邮政编码不合法!");
form.PublicZipCode.focus();
return false;
}
return true;
}
//-->
</SCRIPT>
2.6 限定表单项不能输入的字符
<script language="javascript">
<!--
function contain(str,charset)// 字符串包含测试函数
{
var i;
for(i=0;i <charset.length;i++)
if(str.indexOf(charset.charAt(i))>=0)
return true;
return false;
}
function CheckForm()
{
if ((contain(document.form.NAME.value, "%\(\)> <")) || (contain(document.form.MESSAGE.value, "%\(\)> <")))
{
alert("输入了非法字符");
document.form.NAME.focus();
return false;
}
return true;
}
//-->
</script>

Javascript 相关文章推荐
firefox事件处理之自动查找event的函数(用于onclick=foo())
Aug 05 Javascript
FusionCharts图表显示双Y轴双(多)曲线
Nov 22 Javascript
jQuery入门之层次选择器实例简析
Dec 11 Javascript
js传值后台中文出现乱码的解决方法
Jun 30 Javascript
详解RequireJS按需加载样式文件
Apr 12 Javascript
angularJS自定义directive之带参方法传递详解
Oct 09 Javascript
微信小程序中的canvas 文字断行和省略号显示功能的处理方法
Nov 14 Javascript
浅谈layer弹出层按钮颜色修改方法
Sep 11 Javascript
JavaScript如何实现图片处理与合成
May 29 Javascript
Js Snowflake(雪花算法)生成随机ID的实现方法
Aug 26 Javascript
Vue3 响应式侦听与计算的实现
Nov 11 Javascript
通过实例解析js可枚举属性与不可枚举属性
Dec 02 Javascript
RGB颜色值转HTML十六进制(HEX)代码的JS函数
Apr 25 #Javascript
JQuery 初体验(建议学习jquery)
Apr 25 #Javascript
jQuery 注意事项 与原因分析
Apr 24 #Javascript
javascript Excel操作知识点
Apr 24 #Javascript
使用自定义setTimeout和setInterval使之可以传递参数和对象参数
Apr 24 #Javascript
在线编辑器中换行与内容自动提取
Apr 24 #Javascript
Js 获取HTML DOM节点元素的方法小结
Apr 24 #Javascript
You might like
全国FM电台频率大全 - 8 黑龙江省
2020/03/11 无线电
PHP实现创建微信自定义菜单的方法示例
2017/07/14 PHP
PHP检查网站是否宕机的方法示例
2017/07/24 PHP
thinkPHP中钩子的使用方法实例分析
2017/11/16 PHP
PHP进阶学习之Geo的地图定位算法详解
2019/06/19 PHP
IE 当eval遇上function的处理
2011/08/09 Javascript
程序员必知35个jQuery 代码片段
2015/11/05 Javascript
如何动态加载外部Javascript文件
2015/12/02 Javascript
详解AngularJS中的filter过滤器用法
2016/01/04 Javascript
js仿手机页面文件下拉刷新效果
2016/10/14 Javascript
jquery的父、子、兄弟节点查找,节点的子节点循环方法
2016/12/07 Javascript
深入浅析JSONAPI在PHP中的应用
2017/12/24 Javascript
js操作table中tr的顺序实现上移下移一行的效果
2018/11/22 Javascript
vue组件是如何解析及渲染的?
2021/01/13 Vue.js
[46:40]VGJ.T vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
完美解决Python 2.7不能正常使用pip install的问题
2018/06/12 Python
python多进程控制学习小结
2018/10/31 Python
python pands实现execl转csv 并修改csv指定列的方法
2018/12/12 Python
python调用自定义函数的实例操作
2019/06/26 Python
PYTHON发送邮件YAGMAIL的简单实现解析
2019/10/28 Python
OpenCV+python实现实时目标检测功能
2020/06/24 Python
HTML5中的网络存储实现方式
2020/04/28 HTML / CSS
英国最大的独立家具零售商:Furniture Village
2016/09/06 全球购物
美国汽车轮胎和轮毂销售网站:Tire Rack
2018/01/11 全球购物
什么是Oracle的后台进程background processes?都有哪些后台进程?
2012/04/26 面试题
大学生最常用的自我评价
2013/12/07 职场文书
任命书范本大全
2014/06/06 职场文书
原料仓仓管员岗位职责
2014/07/08 职场文书
绿色小区申报材料
2014/08/22 职场文书
领导班子整改方案
2014/10/25 职场文书
2014年学习委员工作总结
2014/11/14 职场文书
二年级上册数学教学计划
2015/01/20 职场文书
2015年学校安全工作总结
2015/04/22 职场文书
培训班开班主持词
2015/07/02 职场文书
《秋天的图画》教学反思
2016/02/19 职场文书
Python中OpenCV实现简单车牌字符切割
2021/06/11 Python