JavaScript学习笔记(一)—细节问题
2011-04-14 11:20
218 查看
本篇是《.Net学习笔记——细节问题》(/article/5030084.html)的姊妹篇,记录JavaScript学习笔记——细节问题!有的时候,细节决定成败!
(1)在ASP.NET中使用JavaScript
<script type="text/javascript">
function validate()
{
if(document.getElementById("<%=txtUserName.ClientID %>").value=="")
{
alert("请填写用户名!");
return false;
}
else if(document.getElementById("<%=txtPassword.ClientID %>").value=="")
{
alert("请填写密码!");
return false;
}
}
</script>
<asp:Button ID="btnLogin" runat="server" Text="登陆" Width="47px" OnClientClick="return validate()"/>
如果用下面的JavaScript代码:
(2)表格隔行变色
<script type="text/javascript">
window.onload = function () {
var oTb = document.getElementById("tbStu"); //获取表格
for (var i = 0; i < oTb.rows.length; i++) {
if (i % 2 == 0)
oTb.rows[i].className = "trOdd";
}
}
</script>
(3)控制Html对象显示或隐藏
function Change()
{
var btn=document.getElementById("Button2");
if(btn.style.display=="")
btn.style.display="none";
else
btn.style.display="";
}
(4)动态样式切换
4.1 使用HTML元素的style属性
<script type="text/javascript">
function ChangeBackColor()
{
var div=document.getElementById("div1");
div.innerHTML="changeBackgroundColor";
div.style.backgroundColor="Green";
}
</script>
//HTML代码
<div id="div1" onclick="ChangeBackColor();alert('changeBackgroundColor')">
<p>click me!</p>
</div>
4.2 使用HTML元素的className属性
<style type="text/css">
.backcolor
{
background-color:Green;
font-size:20px;
color:red;
}
</style>
<script type="text/javascript">
function ChangeBackColor()
{
var div=document.getElementById("div1");
div.innerHTML="changeBackgroundColor";
//div.style.backgroundColor="Green";
div.className="backcolor";
}
</script>
HTML代码同上。
(1)在ASP.NET中使用JavaScript
<script type="text/javascript">
function validate()
{
if(document.getElementById("<%=txtUserName.ClientID %>").value=="")
{
alert("请填写用户名!");
return false;
}
else if(document.getElementById("<%=txtPassword.ClientID %>").value=="")
{
alert("请填写密码!");
return false;
}
}
</script>
<asp:Button ID="btnLogin" runat="server" Text="登陆" Width="47px" OnClientClick="return validate()"/>
如果用下面的JavaScript代码:
if (document.getElementById("txtUserName").value == "") { alert("请填写用户名!"); return false; } 发现也能运行。但其实这是巧合,txtUserName控件的ClientID恰巧是txtUserName。如果把控件放到内容页中,如: <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server"> <asp:Panel ID="Panel1" runat="server"> <asp:TextBox ID="txtUserName" runat="server"></asp:TextBox> <asp:Button ID="btnLogin" runat="server" Text="登陆" Width="47px" OnClientClick="return myvalidate();" /> </asp:Panel> </asp:Content> 运行,就会报错。这是因为txtUserName控件的ClientID变成了ContentPlaceHolder1_txtUserName,不再是txtUserName。 所以正确的做法是: document.getElementById("<%=txtUserName.ClientID %>").value
(2)表格隔行变色
<script type="text/javascript">
window.onload = function () {
var oTb = document.getElementById("tbStu"); //获取表格
for (var i = 0; i < oTb.rows.length; i++) {
if (i % 2 == 0)
oTb.rows[i].className = "trOdd";
}
}
</script>
(3)控制Html对象显示或隐藏
function Change()
{
var btn=document.getElementById("Button2");
if(btn.style.display=="")
btn.style.display="none";
else
btn.style.display="";
}
(4)动态样式切换
4.1 使用HTML元素的style属性
<script type="text/javascript">
function ChangeBackColor()
{
var div=document.getElementById("div1");
div.innerHTML="changeBackgroundColor";
div.style.backgroundColor="Green";
}
</script>
//HTML代码
<div id="div1" onclick="ChangeBackColor();alert('changeBackgroundColor')">
<p>click me!</p>
</div>
4.2 使用HTML元素的className属性
<style type="text/css">
.backcolor
{
background-color:Green;
font-size:20px;
color:red;
}
</style>
<script type="text/javascript">
function ChangeBackColor()
{
var div=document.getElementById("div1");
div.innerHTML="changeBackgroundColor";
//div.style.backgroundColor="Green";
div.className="backcolor";
}
</script>
HTML代码同上。
相关文章推荐
- seaJs学习笔记之javascript的冲突问题
- seaJs学习笔记之javascript的依赖问题
- javascript简单性能问题及学习笔记
- seaJs学习笔记之javascript的冲突问题
- Javascript学习笔记3——变量、作用域和内存问题
- 韩顺平 javascript教学视频_学习笔记13_类和对象细节_创建对象的几种方式_js对象内存分析
- javascript简单性能问题及学习笔记
- 韩顺平 javascript教学视频_学习笔记9_js函数调用过程内存分析_js函数细节
- opengl学习小笔记(1)设置小细节+小问题解决
- seaJs学习笔记之javascript的依赖问题
- (学习笔记)JavaScript中调用函数的括号问题
- PHP学习笔记——数组下标的细节问题
- JavaScript基础学习笔记(二)--- 变量、作用域和内存问题
- 学习笔记---javascript的this问题
- JavaScript学习笔记 -- 变量作用域问题
- javascript学习笔记 - 变量、作用域和内存问题
- Javascript学习笔记04 ——变量,作用域,内存问题
- seaJs学习笔记之javascript的性能问题
- JavaScript高级程序设计学习笔记--变量、作用域和内存问题
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第30讲_类和对象细节_创建对象的几种方式_js对象内存分析_学习笔记_源代码图解_PPT文档整理