常用JavaScript(二)

窗口最大化

< body onload = " window.resizeTo(window.screen.width - 4,window.screen.height-50);window.moveTo(-4,-4) " >  

禁止右键

document.oncontextmenu  =   function ()  return false;}  

禁止保存 <noscript><iframe src="*.htm"></iframe></noscript>
禁止选取<body oncontextmenu="return false" ondragstart="return false" onselectstart ="return false"
onselect="document.selection.empty)" oncopy="document.selection.empty)" onbeforecopy=
"return false"onmouseup="document.selection.empty()>
禁止粘贴<input type=text onpaste="return false">

 根据宽度换行 style="word-break:break-all"

//消除图像工具栏

< IMG  src ="mypicture.jpg"  temp_src ="mypicture.jpg"  HEIGHT ="100px"  WIDTH ="100px"  GALLERYIMG ="false" >   
or 
< head >  
< meta  http-equiv ="imagetoolbar"  content ="no" >  
</ head >  

//取得控件得绝对位置(1)

< script language = " javascript " >    < br  />
function  getoffset(e)  < br  />
{  <br />
 
var t=e.offsetTop;  <br />
 
var l=e.offsetLeft;  <br />
 
while(e=e.offsetParent) <br />
 
{  <br />
  t
+=e.offsetTop;  <br />
  l
+=e.offsetLeft;  <br />
 }
  <br />
 
var rec = new Array(1); <br />
 rec[
0]  = t; <br />
 rec[
1= l; <br />
 
return rec <br />
}
   < br  />
</ script >   < br  />

[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
//获得控件的绝对位置(2)
oRect = obj.getBoundingClientRect();
oRect.left
oRect.

下载文件
function DownURL(strRemoteURL,strLocalURL) 

 
try 
 

  
var xmlHTTP=new ActiveXObject("Microsoft.XMLHTTP"); 
  xmlHTTP.open(
"Get",strRemoteURL,false); 
  xmlHTTP.send(); 
  
var adodbStream=new ActiveXObject("ADODB.Stream"); 
  adodbStream.Type
=1;//1=adTypeBinary 
  adodbStream.Open(); 
  adodbStream.write(xmlHTTP.responseBody); 
  adodbStream.SaveToFile(strLocalURL,
2); 
  adodbStream.Close(); 
  adodbStream
=null
  xmlHTTP
=null
   
 }
 
 
catch(e) 
 

  window.confirm(
"下载URL出错!"); 
 }
 
 
//window.confirm("下载完成."); 
}
 

检查连接是否有效
function getXML(URL)  

 
var xmlhttp = new ActiveXObject("microsoft.xmlhttp"); 
 xmlhttp.Open(
"GET",URL, false);  
 
try 
 
{  
  xmlhttp.Send(); 
 }
 
 
catch(e){} 
 
finally  
 

  
var result = xmlhttp.responseText; 
  
if(result)  
  

   
if(xmlhttp.Status==200
   

    
return(true); 
   }
 
   
else  
   

    
return(false); 
   }
 
  }
 
  
else  
  

   
return(false); 
  }
 
 }
 
}


检查网页是否存在
function CheckURL(URL) 

  
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
  xmlhttp.Open(
"GET",URL, false); 
  
try 
  
{  
    xmlhttp.Send();  
    
var result = xmlhttp.status; 
  }
 
  
catch(e) {return(false); } 
  
if(result==200
  
{  
    
return true
  }
 
  xmlhttp 
= null
  
return false
}


1 父子页面的值传递
两种方式:
     1)在父页面可以通过pagename操作子页面。
       pagename = window.open('page ','name','width,height'); pagename.focus();
        在子页面可以通过parents.Label.innerText = '"value"'
     2)通过模态对话框返回值。当执行模态对话框时,父页面将停止操作。
        在父页面
          var result = showModalDialog(url,window,"dialogWidth:"+width+"px;dialogHeight:"+height+"px;help:no;scroll:no;status:no");
          alert(result)
        在子页面
            <script language='javascript'>
                  window.returnValue = 'True';
                  window.close()
             </script>
      3) 通过vArguments将父窗体的值传递到子窗体
      <script>
             var obj = new Object();
             obj.name="51js";
             window.showModalDialog   ("modal.htm",obj,"dialogWidth=200px;dialogHeight=100px");
       </script>
       modal.htm
        <script>
            var obj = window.dialogArguments
            alert("您传递的参数为:" + obj.name)
          </script>
      4) 子窗体使父窗体刷新
         opener.window.location.reload();
      5) 避免提交时弹出另一个页面
   <head>标签里加入<base target="_self">
      6) 避免模式窗体不刷新
    Response.Expires = -1
    Response.ExpiresAbsolute = Now() - 1
    Response.cachecontrol = "no-cache"
2 将javascript值赋给session
     新建一个框架,不让他显示出来。在页面里
     document.all('djTmp').src="djTmp.aspx?name=RoleName&value=" + document.all('cboRole').value
     在框架网页里
        Dim strName As String = Request.QueryString("name")
        Dim strValue As String = Request.QueryString("value")
        Session(strName) = strValue
3 服务器控件取js值。
    新建一隐藏控件。将其设为服务器端运行,这样通过脚本和服务器都可以访问。

参考:http://neozhu.cnblogs.com/archive/2005/07/28/201838.aspx
      http://www.phpx.com/happy/showthread.php?threadid=101722&goto=nextnewest

一些常用的JavaScript函数
//==========================================================================
//
//
  代码描述:将某个datagrid中模板的中checkbox置为相反状态
//
 
//
  传入参数:Form --- 当前页面ID            例:  xt_function_m
//
            CheckBox  --- 被选择的字符    例:  'CheckBoxSelect'
//
  
//
  返回参数:无
//
//
//
==========================================================================
function SelectTitleAll(Form, CheckBox)            
{
    
var i
    
var intLength = Form.elements.length            
                            
    
for (i = 0; i < intLength; i ++)
    
{
        
var strType = Form.elements[i].type
        
var strName = Form.elements[i].name

        
if (strType == 'checkbox' && strName.lastIndexOf(CheckBox) == strName.length - CheckBox.length)
        
{
            Form.elements[i].checked 
= !Form.elements[i].checked;
        }
        
        
    }
                
}



//==========================================================================
//
//
 代码描述:将表单中所有的checkbox都设置为打勾状态
//
 
//
 传入参数:Form --- 当前页面ID 例: xt_function_m
//
 CheckBox --- 被选择的字符 例: 'CheckBoxSelect'
//
 
//
 返回参数:无
//
//
//
==========================================================================
function SelectAll(Form, CheckBox) 
{
var i
var intLength = Form.elements.length 

for (i = 0; i < intLength; i ++)
{
var strType = Form.elements[i].type

if (strType == 'checkbox')
{
Form.elements[i].checked 
= true;
}
 
}
 
}


//==========================================================================
//
//
 代码描述:去除字符串左边空格
//
 
//
 传入参数:str --- 去除之前的字符串 例: ‘ OK’
//
//
 
//
 返回参数:去出以后的字符串
//
//
//
==========================================================================
function jsLTrim(str)
{
var rtnStr;
rtnStr
=""
for (var i = 0; i < str.length; i ++)
{
if (str.charAt(i) != " ")
{
rtnStr 
= str.substr(i);
break;
}

}

return rtnStr;
}


//==========================================================================
//
//
 代码描述:去除字符串右边空格
//
 
//
 传入参数:str --- 去除之前的字符串 例: ‘ OK’
//
//
 
//
 返回参数:去出以后的字符串
//
//
//
==========================================================================
function jsRTrim(str)
{
var rtnStr;
rtnStr 
= ""
for (var i = str.length-1; i >= 0; i --)
{
if (str.charAt(i) != " ")
{
rtnStr 
= str.substring(0,i+1);
break;
}

}

return rtnStr;
}


//==========================================================================
//
//
 代码描述:去除字符串两边空格
//
 
//
 传入参数:str --- 去除之前的字符串 例: ‘ OK ’
//
//
 
//
 返回参数:去出以后的字符串
//
//
//
==========================================================================
function Trim(str)
{
return(jsLTrim(jsRTrim(str)));
}


//==========================================================================
//
//
 代码描述:将回车按键 转为 Tab按键
//
 
//
 传入参数:
//
//
 
//
 返回参数:
//
//
//
==========================================================================
function Key_EnterToTab()

if(event.keyCode == 13)

event.keyCode 
= 9;
}
 
}
 
//==========================================================================
//
//
 代码描述:判断日期的大小
//
 
//
 传入参数: Date1 ---日期1 例:'2004-1-1'
//
 传入参数: Date2 ---日期2 例:'2004-2-1'
//
 传入参数: Compare ---比较符号 例如 '>','<','=' 
//
 
//
 返回参数: bool--是否成立
//
//
==========================================================================
function Est_Date(Date1,Date2,Compare)
{
switch(Compare)
{
case '>':
if (Date1>Date2)
{
return true;
}

else
return false;
break;
case '<=':
if (Date1<=Date2)
{
return true;
}

else
return false;
break;
case '=':
if (Date1==Date2)
{
return true;
}

else
return false;
break;
}

}


//==========================================================================
//
//
 代码描述:判断日期的大小
//
 
//
 传入参数: url 例:www.witehouse.com?bs=over
//
 传入参数: 参数名称 例:bs
//
 返回参数: 参数值
//

//
//
==========================================================================
function QueryString(url,sName)
{
var sSource = url;
var sReturn = "";
var sQUS = "?";
var sAMP = "&";
var sEQ = "=";
var iPos;

iPos 
= sSource.indexOf(sQUS);

var strQuery = sSource.substr(iPos, sSource.length - iPos);
var strLCQuery = strQuery.toLowerCase();
var strLCName = sName.toLowerCase();

iPos 
= strLCQuery.indexOf(sQUS + strLCName + sEQ);
if (iPos == -1)
{
iPos 
= strLCQuery.indexOf(sAMP + strLCName + sEQ);
if (iPos == -1)
return "";
}


sReturn 
= strQuery.substr(iPos + sName.length + 2,strQuery.length-(iPos + sName.length + 2));
var iPosAMP = sReturn.indexOf(sAMP);

if (iPosAMP == -1)
return sReturn;
else
{
sReturn 
= sReturn.substr(0, iPosAMP);
}


return sReturn;
}


//==========================================================================
//
//
 代码描述:判断多行文本框的是否超出字符
//
 
//
 传入参数: txt 例:form.alltxt 多行文本框对象
//
 传入参数: maxlen 例:30 允许最大的多行文本的长度
//
 返回参数: 无
//
//
//
==========================================================================
function JudTxtValue(txt,maxlen)
{
if (txt.value.length>maxlen)
{
alert('文本框输入超出'
+maxlen+'个长度');
txt.value
=txt.value.substr(0,maxlen); 
}

}
5,在客户端javascript里操作服务端控件:
this.Button1.Attributes.Add("onclick","return upchang();");

function upchang() 

var i=document.Form1.all['ListBox1'].selectedIndex;
if(i>0

var val=document.Form1.all['ListBox1'].item(i-1).value; 
var txt=document.Form1.all['ListBox1'].item(i-1).text; 

document.Form1.all['ListBox1'].item(i
-1).value=document.Form1.all['ListBox1'].item(i).value;
document.Form1.all['ListBox1'].item(i
-1).text=document.Form1.all['ListBox1'].item(i).text;

document.Form1.all['ListBox1'].item(i).value
=val; 
document.Form1.all['ListBox1'].item(i).text
=txt; 

document.Form1.all['ListBox1'].selectedIndex
=i-1;
}

}


 

你可能感兴趣的:(常用JavaScript(二))