您的位置:首页 > Web前端 > JavaScript

写js时遇到的一些小问题

2010-12-06 00:00 393 查看
1、在写<asp:Button ……>的OnClientClick事件时,需要加上return;否则会出现OnClientClick返回false,但仍然执行OnClick事件的情况。
例如:
<asp:Button ID="btnSearch" runat="server" CssClass="button" Text="查找...."   OnClientClick="return CheckBox();" OnClick="btnSearch_Click"></asp:Button>

2、window.showModalDialog()方式打开新窗口中,如果其中包含js编辑器或者其他第三方编辑器时,会出现不能编辑的情况,连选中都不行;
至今我还没找到比较好的解决办法,还是换成window.open()方式试试。
3、checkbox全选问题:
html:
<input type="checkbox" id="chkAll" onclick="selectAll()" />全选 
<asp:CheckBoxList ID="ckblist" runat="server" RepeatLayout="Flow" RepeatDirection="Horizontal"></asp:CheckBoxList>

js:
function selectAll() 
{   
  var obj = document.getElementById("chkAll");   
  var ckblist = document.getElementById("ckblist");   
  var chk = ckblist.getElementsByTagName("input");   
  if(obj.checked)   
  {     
    for(var i = 0; i < chk.length; i++)     
    {       
      chk[i].checked = true;     
    }   
  }   
  else   
  {     
    for(var i = 0; i < chk.length; i++)     
    {       
      chk[i].checked = false;     
    }   
  } 
}

下面是一些js基础知识
① 
//js获取Table并改变它的样式 
<script type="text/javascript"> 
function setColSpan() 
{ 
var x=document.getElementById('myTable').rows[0].cells //获取table的第一行 
x[0].colSpan="1" //改变table的样式 
x[1].colSpan="3" //同上 
} 
</script> 
<table id="myTable" border="1"> 
<tr> 
<td colspan="2">单元格1</td> 
<td colspan="2">单元格2</td> 
</tr> 
<tr> 
<td>单元格3</td> 
<td>单元格4</td> 
<td>单元格5</td> 
<td>单元格6</td> 
</tr> 
</table> 
<input type="button" onclick="setColSpan()" value="改变colspan值"> 

② 
//js中的定时循环调用函数 setInterval (无限弹)和对应的停止函数 
var timer //首先要声明一个变量用来存储setInterval返回 

的值. 
timer=setInterval("alert('123')",500); //用声明好的变量存储setInterval返回的值. 
clearInterval(timer); //清除setInterval函数 
如果确实要在setInterval方法中调用参数,并且该函数需要传递参数,那么可以通过通过如下方式:把要传的值声明为全局变量,然 

后在方法中进行调用.例如: 
<script type="text/javaScript"> 
var n=1,obj ; 
function f1() 
{ obj =setInterval(f2(),1000) } 
function f2() 
{ alert(n+=n;)} 
</script> 
③ 
//js获得本页网址 
var Url = window.location.href; 

④ 
//js控制保存本页面 
document.execCommand("SaveAs","","C:\\index.htm"); //1.要进行的操作名,2.默认保存到的地址和文件名和文件类型 
function save(dizhi){ 
document.execCommand("SaveAs","",dizhi); 
} 

⑤ 
//打开,另存为,属性,打印"等14个JS代码 
■打开■ 
<input name=Button onClick=document.all.WebBrowser.ExecWB(1,1) type=button value=打开> 
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT> 
■另存为■ 
<input name=Button onClick=document.all.WebBrowser.ExecWB(4,1) type=button value=另存为><OBJECT 

classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT> 
■属性■ 
<input name=Button onClick=document.all.WebBrowser.ExecWB(10,1) type=button value=属性><OBJECT 

classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT> 
■打印■ 
<input name=Button onClick=document.all.WebBrowser.ExecWB(6,1) type=button value=打印><OBJECT 

classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT> 
■页面设置■ 
<input name=Button onClick=document.all.WebBrowser.ExecWB(8,1) type=button value=页面设置><OBJECT 

classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT> 
■刷新■ 
<input type=button value=刷新 name=refresh onclick="window.location.reload()"> 
■导入收藏■ 
<input type="button" name="Button" value="导入收藏夹" onClick=window.external.ImportExportFavorites(true,);> 
■导出收藏■ 
<input type="button" name="Button3" value="导出收藏夹" onClick=window.external.ImportExportFavorites(false,);> 
■加入收藏■ 
<INPUT name=Button2 onclick="window.external.AddFavorite(location.href, document.title)" type=button value=加入收藏 

夹> 
■整理收藏夹■ 
<INPUT name=Submit2 onclick="window.external.ShowBrowserUI(OrganizeFavorites, null)" type=button value=整理收藏夹> 
■查看原文件■ 
<INPUT name=Button onclick=window.location = "view-source:" + window.location.href type=button value=查看源文件> 
■语言设置■ 
<INPUT name=Button onclick="window.external.ShowBrowserUI(LanguageDialog, null)" type=button value=语言设置> 
■前进■ 
<INPUT name=Submit onclick=history.go(1) type=submit value=前进> 
■后退■ 
<INPUT name=Submit2 onclick=history.go(-1) type=submit value=后退> 

⑥ 
//改变CSS样式 
一、局部改变样式(区分大小写) 
改变className(不用加上style) 
document.getElementById('t2').className=”…” 
改变classText(必须加上style) 
document.getElementById('t2').style.cssText=”…” 
直接改变控件的CSS的样式 
document.getElementById('t2').style.backgroundColor=”#003366″ 
二、全局改变样式(换肤) 
给现在使用的CSS样式加一个id,换肤的时候,更改引用的CSS样式的路径,例如: 
<link rel = "stylesheet" type="text/css" id="css" href="firefox.css" /> 
<span on click="javascript:document.getElementById('css').href = 'ie.css'">点我改变样式</span> 

⑦ 
//生成随机数,参数为(最小值,最大值) 
function GetRnd(min,max){ 
return parseInt(Math.random()*(max-min+1)); 
} 

⑧ 
//js中把字符串转化为数字 
parseInt("123"); //123
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: