ASP.NET 中,用JS进行Radio取值、计算CheckBox个数

Calchas 发表于 2009, February 9, 3:14 PM

JavaScript代码
  1. //Radio取值   
  2. function GetRadioValue(RadioName){   
  3.     var obj;       
  4.     obj=document.getElementsByName(RadioName);   
  5.     if(obj!=null){   
  6.         var i;   
  7.         for(i=0;i<obj.length;i++){   
  8.             if(obj[i].checked){   
  9.                 return obj[i].value;               
  10.             }   
  11.         }   
  12.     }   
  13.     return null;   
  14. }   
  15. //计算CheckBox个数   
  16. function GetCheckBox(CheckBoxID,ItemCount)    
  17. {    
  18.     var iCount = 0;    
  19.     for(var i=0;i<ItemCount;i++)    
  20.     {    
  21.         var chk = document.getElementById(CheckBoxID+"_"+i);    
  22.         if(chk != null )    
  23.         {    
  24.             if(chk.checked)    
  25.                 iCount ++;    
  26.         }    
  27.     }    
  28.     return iCount;    
  29. }  

标签: asp.net

大小超标图片缩放

Calchas 发表于 2009, February 9, 3:09 PM

JavaScript代码
  1. <div class="content" id="showContent">   
  2. <img class="imgStyle" alt="" src="200902091404385054.jpg" /></font></p>   
  3. </div>   
  4. <script type="text/javascript">   
  5. window.onload=function(){    
  6. fiximage('600x500');   
  7. }   
  8. function fiximage(thumbs_size) {   
  9. var max = thumbs_size.split('x');   
  10. var fixwidth = max[0];   
  11. var fixheight = max[1];   
  12. //imgs = document.getElementsByTagName('img');   
  13. imgs = document.getElementById("showContent").getElementsByTagName('img');   
  14. for(i=0;i<imgs.length;i++) {   
  15. w=imgs[i].width;h=imgs[i].height;   
  16. if(h>fixheight) { imgs[i].height=fixheight;imgs[i].width=w/(h/fixheight);}   
  17. if(w>fixwidth) { imgs[i].width=fixwidth;imgs[i].height=h/(w/fixwidth);}   
  18. }   
  19. }   
  20. </script>  

IE5/IE6下PNG图片的透明问题

Calchas 发表于 2008, December 31, 10:40 AM

JavaScript代码
  1. function correctPNG()   
  2. {   
  3.  for(var i=0; i<document.images.length; i++)   
  4.  {   
  5.   var img = document.images[i]   
  6.   var imgName = img.src.toUpperCase()   
  7.   if (imgName.substring(imgName.length-3, imgName.length) == "PNG")   
  8.   {   
  9.   var imgID = (img.id) ? "id='" + img.id + "' " : ""   
  10.   var imgClass = (img.className) ? "class='" + img.className + "' " : ""   
  11.   var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "   
  12.   var imgStyle = "display:inline-block;" + img.style.cssText   
  13.   if (img.align == "left") imgStyle = "float:left;" + imgStyle   
  14.   if (img.align == "right") imgStyle = "float:right;" + imgStyle   
  15.   if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle   
  16.   var strNewHTML = "<span " + imgID + imgClass + imgTitle   
  17.   + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"   
  18.   + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"   
  19.   + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"   
  20.   img.outerHTML = strNewHTML   
  21.   i = i-1   
  22.   };   
  23.  };   
  24. };   
  25.   
  26. if(navigator.userAgent.indexOf("MSIE 6.0")>-1 || navigator.userAgent.indexOf("MSIE 5.0")>-1)   
  27. {   
  28. window.attachEvent("onload", correctPNG);   
  29. };    

在网上找的JS代码中没有判断浏览器是否是IE6,都应用了该JS,导致IE8里面无法显示PNG图片。
我添加了一个判断语句

标签: javascript

window.opener 跟 window.parent,document.referrer的区别

Calchas 发表于 2008, December 25, 1:35 PM

window.opener是当前页面A通过open方法弹出一个窗口B,那在B页面上 window.opener就是A

window.parent是当前页面C通过location.href转到新的页面D,那在D页面上window.parent就是B

或者是页面E里套一个frame为F,那F页面的window.parent就是E

A页面通过open方法打开B页面,B页面通过location打开C页面,C页面上刷新A页面
function refreshParenetWindow( refreshMethod )
{
switch( refreshMethod )
{
case "ButtonClick": oParentButton = window.parent.opener.document.getElementById( "btnSearch" );
oParentButton.click();
break;
case "Location": window.opener.navigate(window.opener.location.href);
break;
default: window.opener.navigate(window.opener.location.href); break;
}
}
A页面通过open方法打开B页面,B页面通过open打开C页面,C页面上刷新A页面在B页面的onunload事件中写一段刷新A页面的javascript方法,在C页面关闭的时候,关闭B页面,就可以实现。


document.referrer 用法

referrer 描述: document对象的referrer属性,返回导航到当前网页的超链接所在网页的URL。

举例:

1. a.html文件内容如下: 浏览b.html
2. b.html文件中的内容如下:
3. 则在通过a.html中的超链接访问b.html的时候,显示的结果是: http://127.0.0.1:8180/a.html 说明: 经过测试,需要将两个文件放在服务器中才能得到想要的结果,若直接在本地文件夹中则得到空字符串,若直接在浏览器地址栏中输入b.html的URL地址或使用打开菜单访问b.html,则document.referrer的值为空字符串。 









js操作frame详细解说,window.opener和window.parent的区别


frame框架里的页面要改其他同框架下的页面或父框架的页面就用parent
window.opener引用的是window.open打开的页面的父页面。

window.frames对象可以引用iframe里的页面,也可以引用frameset里的页面.

可以这样
window.frames[0].document.getElementById('xx');
可以这样
window.frames[0].document.body.innerHTML;

frm = window.parent.window.frames['uploadFrame'];
frmDocument = frm.document;
frm.sb(3); //sb 是uploadFrame页面里的一个函数

对于firefox
如果你遇到报错:parent.document.frames has no properties
换为如下代码就可以了,这个代码IE,ff兼容. frm = window.parent.window.frames['uploadFrame'];其实 frames 集合并不是挂在 document 而是挂在 window 对象下.

注意这样修改frame里的页面有限制,就是必须是同域下的,否则无法访问
如果是同一域下,但是子域名不同,那么涉及到的js,html文件都加上一句。
document.domain = xxx.com [这里填写你的域名]

document.getElementById('iframeid').contentWindow.document.getElementById('someelementid');

标签: javascript

身份证号码验证-支持新的带x身份证

Calchas 发表于 2008, December 23, 1:55 PM

支持新身份证,支持带 x 的身份证

但是我测试 15位身份证的检查不正确。

 

JavaScript代码
  1. //--身份证号码验证-支持新的带x身份证   
  2. function isIdCardNo(num)    
  3. {   
  4.     var factorArr = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1);   
  5.     var error;   
  6.     var varArray = new Array();   
  7.     var intValue;   
  8.     var lngProduct = 0;   
  9.     var intCheckDigit;   
  10.     var intStrLen = num.length;   
  11.     var idNumber = num;       
  12.     // initialize   
  13.     if ((intStrLen != 15) && (intStrLen != 18)) {   
  14.         //error = "输入身份证号码长度不对!";   
  15.         //alert(error);   
  16.         //frmAddUser.txtIDCard.focus();   
  17.         return false;   
  18.     }       
  19.     // check and set value   
  20.     for(i=0;i<intStrLen;i++) {   
  21.         varArray[i] = idNumber.charAt(i);   
  22.         if ((varArray[i] < '0' || varArray[i] > '9') && (i != 17)) {   
  23.             //error = "错误的身份证号码!.";   
  24.             //alert(error);   
  25.             //frmAddUser.txtIDCard.focus();   
  26.             return false;   
  27.         } else if (i < 17) {   
  28.             varArray[i] = varArray[i]*factorArr[i];   
  29.         }   
  30.     }   
  31.     if (intStrLen == 18) {   
  32.         //check date   
  33.         var date8 = idNumber.substring(6,14);   
  34.         if (checkDate(date8) == false) {   
  35.             //error = "身份证中日期信息不正确!.";   
  36.             //alert(error);   
  37.             return false;   
  38.         }           
  39.         // calculate the sum of the products   
  40.         for(i=0;i<17;i++) {   
  41.             lngProduct = lngProduct + varArray[i];   
  42.         }           
  43.         // calculate the check digit   
  44.         intCheckDigit = 12 - lngProduct % 11;   
  45.         switch (intCheckDigit) {   
  46.             case 10:   
  47.                 intCheckDigit = 'X';   
  48.                 break;   
  49.             case 11:   
  50.                 intCheckDigit = 0;   
  51.                 break;   
  52.             case 12:   
  53.                 intCheckDigit = 1;   
  54.                 break;   
  55.         }           
  56.         // check last digit   
  57.         if (varArray[17].toUpperCase() != intCheckDigit) {   
  58.             //error = "身份证效验位错误!...正确为: " + intCheckDigit + ".";   
  59.             //alert(error);   
  60.             return false;   
  61.         }   
  62.     }    
  63.     else{        //length is 15   
  64.         //check date   
  65.         var date6 = idNumber.substring(6,12);   
  66.         if (checkDate(date6) == false) {   
  67.             //alert("身份证日期信息有误!.");   
  68.             return false;   
  69.         }   
  70.     }   
  71.     //alert ("Correct.");   
  72.     return true;   
  73. }   
  74.   
  75. function checkDate(date)   
  76. {   
  77.     return true;   
  78. }   
  79.   
  80. //调用   
  81.     if(Trim(document.getElementById("IDcard").value)=="")   
  82.     {   
  83.         alert("必须填写身份证号");   
  84.         document.getElementById("IDcard").focus();   
  85.         return false;   
  86.     }   
  87.     if(!isIdCardNo(document.getElementById("IDcard").value))   
  88.     {   
  89.         alert("必须填写正确的身份证号");   
  90.         document.getElementById("IDcard").focus();   
  91.         return false;   
  92.     }   

标签: javascript

JS Trim() LTrim() RTrim() 去掉左右空格

Calchas 发表于 2008, December 23, 1:52 PM

JavaScript代码
  1. //去掉左右空格   
  2. function LTrim(str)    
  3. {    
  4. var i;    
  5. for(i=0;i<str.length;i++)    
  6. {    
  7. if(str.charAt(i)!=" "&&str.charAt(i)!=" ")break;    
  8. }    
  9. str=str.substring(i,str.length);    
  10. return str;    
  11. }    
  12. function RTrim(str)    
  13. {    
  14. var i;    
  15. for(i=str.length-1;i>=0;i--)    
  16. {    
  17. if(str.charAt(i)!=" "&&str.charAt(i)!=" ")break;    
  18. }    
  19. str=str.substring(0,i+1);    
  20. return str;    
  21. }    
  22. function Trim(str)    
  23. {    
  24. return LTrim(RTrim(str));    
  25. }   

标签: javascript

公告滚动、 版块切换JS

Calchas 发表于 2008, December 17, 4:27 PM

滚动 JS 代码

 

JavaScript代码
  1. var speeda = 50;  
  2. var div0 = document.getElementById("announce");   
  3. var div1 = document.getElementById("announce1");   
  4. var div2 = document.getElementById("announce2");   
  5.   
  6. //先判断高度  
  7. if (div1.offsetHeight > div0.offsetHeight)  
  8. {  
  9. div2.innerHTML = div1.innerHTML;   
  10. //alert((div2.offsetTop-div1.offsetTop) +"-"+ div1.scrollTop +"-"+div2.offsetTop +"-"+ div2.offsetHeight);  
  11. var MyMar = setInterval(Marquee,speeda);  
  12. div0.onmouseover = function() {clearInterval(MyMar)};  
  13. div0.onmouseout = function() {MyMar = setInterval(Marquee,speeda)};  
  14. }  
  15.   
  16. function Marquee(){  
  17. if(div2.offsetTop - div1.offsetTop - div0.scrollTop <= 0)  
  18. {  
  19. div0.scrollTop -= div1.offsetHeight;  
  20. }  
  21. else{  
  22. div0.scrollTop ++;  
  23. }  
  24. }  

滚动 HTML 代码

 

 

XML/HTML代码
  1. <div id="announce" style="width:260px;height:200px;overflow:hidden;">  
  2. <div id="announce1" class="font4">  
  3. <ul>  
  4. <li><a href="/Article/HDGG/2008/12/10/305.html" target="_self">国际部12月活动预告</a>[12-02]</li><li><a href="/Article/HDGG/2008/12/10/296.html" target="_self">美国名校直达班(春季班)招生</a>[09-02]</li><li><a href="/Article/HDGG/2008/12/10/295.html" target="_self">澳洲顶级名校直升班即将开班</a>[09-02]</li><li><a href="/Article/HDGG/2008/12/10/284.html" target="_self">最新GAC预科入学考试时间</a>[06-16]</li><li><a href="/Article/HDGG/2008/12/10/269.html" target="_self">留学专题活动</a>[03-12]</li><li><a href="/Article/HDGG/2008/12/10/245.html" target="_self">第23届教师节庆祝大会</a>[09-11]</li><li><a href="/Article/HDGG/2008/12/10/37.html" target="_self">2005年成都市树德中学国际部GAC国际大学预科课程正在招生!</a>[05-25]</li><li><a href="/Article/HDGG/2008/12/10/35.html" target="_self">树德中学VCE中澳国际高中双文凭课程招生简章</a>[05-25]</li>  
  5. </ul>  
  6. </div>  
  7. <div id="announce2" class="font4">  
  8. </div>  
  9. </div>  

 

栏目切换 JS 代码

JavaScript代码
  1. var num=6; //该值记录标签的个数     
  2. var settime;     
  3. function GetObj(objName){     
  4. if(document.getElementById){     
  5. return eval('document.getElementById("' + objName + '")');     
  6. }else if(document.layers){     
  7. return eval("document.layers['" + objName +"']");     
  8. }else{     
  9. return eval('document.all.' + objName);     
  10. }     
  11. }     
  12. function change_Menu(index){     
  13. for(var i=1;i<=num;i++){  
  14. /* 最多支持8个标签 */    
  15. if(GetObj("con"+i)&&GetObj("m"+i)){     
  16. GetObj("con"+i).style.display = 'none';     
  17. GetObj("m"+i).className = "menu"+i+"Off";     
  18. }     
  19. }     
  20. if(GetObj("con"+index)&&GetObj("m"+index)){     
  21. GetObj("con"+index).style.display = 'block';     
  22. GetObj("m"+index).className = "menu"+index+"On";     
  23. }     
  24. cur_index=index;     
  25. if(cur_index<num){     
  26. cur_index++;     
  27. }     
  28. else{     
  29. cur_index=1;     
  30. }     
  31. settime=setTimeout("change_Menu(cur_index)",2000);//设置延迟时间     
  32. }     
  33. function superMenu(c_index){     
  34. clearTimeout(settime);     
  35. change_Menu(c_index);     
  36. }   

 

栏目切换HTML

 

XML/HTML代码
  1. <table width="100%" border="0" cellpadding="0" cellspacing="0" align="center" id="">  
  2. <tr><td>                           
  3. <div>  
  4. <UL id="supermenu">  
  5. <LI id="m1" onmouseover="superMenu(1)" class="menu1On">最新</LI>  
  6. <LI id="m2" onmouseover="superMenu(2)" class="menu2Off">城中</LI>  
  7. <LI id="m3" onmouseover="superMenu(3)" class="menu3Off">城东</LI>  
  8. <LI id="m4" onmouseover="superMenu(4)" class="menu4Off">城南</LI>  
  9. <LI id="m5" onmouseover="superMenu(5)" class="menu5Off">城西</LI>  
  10. <LI id="m6" onmouseover="superMenu(6)" class="menu6Off">城北</LI>  
  11. <LI id="m7"></LI>  
  12. </UL>  
  13. </div>  
  14. </td></tr>  
  15. <tr><td valign="top">  
  16. <div id="con1" style="display:display;" class="">  
  17. <ul id="conleft">  
  18. <li class="supermarketTuijian">热门推荐</li>  
  19. <li></li>  
  20. </ul>  
  21. <ul id="conright">  
  22. </ul>  
  23. </div>  
  24. <div id="con2" style="display:none;" class="">  
  25. <ul id="conleft">  
  26. <li class="supermarketTuijian">热门推荐</li>  
  27. <li></li>  
  28. </ul>  
  29. <ul id="conright">  
  30. </ul>  
  31. </div>  
  32. <div id="con3" style="display:none;" class="">  
  33. <ul id="conleft">  
  34. <li class="supermarketTuijian">热门推荐</li>  
  35. <li></li>  
  36. </ul>  
  37. <ul id="conright">  
  38. </ul>  
  39. </div>  
  40. <div id="con4" style="display:none;" class="">  
  41. <ul id="conleft">  
  42. <li class="supermarketTuijian">热门推荐</li>  
  43. <li></li>  
  44. </ul>  
  45. <ul id="conright">  
  46. </ul>  
  47. </div>  
  48. <div id="con5" style="display:none;" class="">  
  49. <ul id="conleft">  
  50. <li class="supermarketTuijian">热门推荐</li>  
  51. <li></li>  
  52. </ul>  
  53. <ul id="conright">  
  54. </ul>  
  55. </div>  
  56. <div id="con6" style="display:none;" class="">  
  57. <ul id="conleft">  
  58. <li class="supermarketTuijian">热门推荐</li>  
  59. <li></li>  
  60. </ul>  
  61. <ul id="conright">  
  62. </ul>  
  63. </div>  
  64. </td></tr>  
  65. </table>  

标签: javascript

javascript 尚未实现错误解决办法

Calchas 发表于 2008, December 17, 4:19 PM

window.onload  =  someFunction();

页面报尚未实现错误时不防用下面的试一下:

window.onload   =   someFunction;   
   
window.onload   =   function   (){someFunction();};   
   
window.onload   =   Function("someFunction();");   

 

比如:

window.onload = superMenu(1);

改为

window.onload = function(){superMenu(1);};

Records:6412345678