日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

跟着杨中科学习asp.net之dom

發(fā)布時(shí)間:2023/12/20 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 跟着杨中科学习asp.net之dom 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Dom教程

使用javascript操作dom進(jìn)行dhtml開(kāi)發(fā),目標(biāo):能夠使用javascript操作dom實(shí)現(xiàn)常見(jiàn)的dhtml效果

Dom就是html頁(yè)面的模型,將每個(gè)標(biāo)簽都做成為一個(gè)對(duì)象

,javascript通過(guò)調(diào)用dom中的屬性、方法就可以對(duì)網(wǎng)頁(yè)中的文本框、層等元素進(jìn)行編程控制,比如通過(guò)操作文本框的dom對(duì)象,就可以讀取文本框中的值、設(shè)置文本框中的值

Dom也像winform一樣,通過(guò)事件、屬性、方法進(jìn)行編程

Javascript→dom就是c#→.net framework。

Css+javascritp+dom=dhtml

Dom事件

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

</head>

<body οnmοusedοwn="alert('別點(diǎn)我!')">

</body>

</html>

封裝到函數(shù)里面:直接調(diào)用

<head>

<title></title>

<script type="text/javascript">

function bodymousedown()

{ alert('點(diǎn)到我了!'); alert('哈哈!') }

</script>

</head>

<body οnmοusedοwn="bodymousedown()">

</br></br></br></br></br></br></br></br></br></br></br></br>

</br></br></br></br></br></br></br></br></br></br></br></br>

</br></br></br></br></br></br>

</body>

</html>

<head>

<title></title>

<script type="text/javascript">

function bodymousedown()

{ alert('點(diǎn)到我了!'); alert('哈哈!') }

function f1() {

alert("我是f1");

}

function f2() {

alert("我是f2");

}

</script>

</head>

<!--<body οnmοusedοwn="bodymousedown()">-->

<input type="button" οnclick="document.οndblclick=f1" value="關(guān)聯(lián)事件1" />

<input type="button" οnclick="document.οndblclick=f2" value="關(guān)聯(lián)事件2" />

</br></br></br></br></br></br></br></br></br></br></br></br>

</br></br></br></br></br></br></br></br></br></br></br></br>

</br></br></br></br></br></br>

</body>

雙擊效果:

Window對(duì)象

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function confirmdemo() {

if (confirm("是否進(jìn)入?")) {

alert("進(jìn)入了!");

}

else {

alert("取消進(jìn)入了!");

}

}

</script>

</head>

<body>

<input type="button" value="confirmtest" οnclick="confirmdemo()"/>

</body>

</html>

<input type="button" value="navigate測(cè)試" οnclick="navigate('HTMLPagedom.htm')"/>

重新導(dǎo)航到另外的頁(yè)面

setInterval每隔一段時(shí)間執(zhí)行指定的代碼,第一個(gè)參數(shù)為代碼

的字符串,第二個(gè)參數(shù)為間隔時(shí)間(單位毫秒),返回值為定時(shí)

器的標(biāo)識(shí)

function startInterval() {

setInterval("alert('hello')", 5000)

}

</script>

</head>

<body>

<input type="button" value="confirmtest" οnclick="confirmdemo()"/>

<input type="button" value="navigate測(cè)試" οnclick="navigate('HTMLPagedom.htm')"/>

<input type="button" value="setInterval測(cè)試" οnclick="startInterval()"/>

clearInterval取消setInterval的定時(shí)執(zhí)行,相當(dāng)于Timer中的

Enabled=False。因?yàn)閟etInterval可以設(shè)定多個(gè)定時(shí),所以

clearInterval要指定清除那個(gè)定時(shí)器的標(biāo)識(shí),即setInterval的返回

值。

var intervalId = setInterval("alert('hello')", 5000);

clearInterval(intervalId);

var intervalId;

function startInterval() {

intervalId=setInterval("alert('hello')", 5000)

}

</script>

</head>

<body>

<input type="button" value="confirmtest" οnclick="confirmdemo()"/>

<input type="button" value="navigate測(cè)試" οnclick="navigate('HTMLPagedom.htm')"/>

<input type="button" value="setInterval測(cè)試" οnclick="startInterval()"/>

<input type="button" value="停止Interval" οnclick="clearInterval(intervalId)"/>

</body>

setTimeout("alert('這是timeout')",2000)

走馬燈

標(biāo)題欄走馬燈效果

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>新學(xué)期歡迎新同學(xué)</title>

<script type="text/javascript">

function scroll() {

var title = document.title;

}

</script>

</head>

<body>

</body>

</html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>新學(xué)期歡迎新同學(xué)</title>

<script type="text/javascript">

function scroll() {

var title = document.title;

var firstch = title.charAt(0);

var leftstr = title.substring(1,title.length);

document.title = leftstr + firstch;

}

scroll();

</script>

</head>

<body>

</body>

</html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>新學(xué)期歡迎新同學(xué)</title>

<script type="text/javascript">

function scroll() {

var title = document.title;

var firstch = title.charAt(0);

var leftstr = title.substring(1, title.length);

document.title = leftstr + firstch;

}

setInterval("scroll()", 500)

</script>

</head>

<body>

</body>

</html>

每隔500毫秒滾動(dòng),實(shí)現(xiàn)走馬燈效果

練習(xí):剛進(jìn)入的時(shí)候還是向左滾動(dòng),點(diǎn)擊【向左】按鈕就向左連

續(xù)滾動(dòng),點(diǎn)擊【向右】按鈕就向右連續(xù)滾動(dòng)。

? 思路1、全局變量,標(biāo)志當(dāng)前的滾動(dòng)方向,當(dāng)點(diǎn)擊向左的時(shí)候

dir="left",向右dir="right"。

? 思路2、scrollleft scroolright,向右滾的時(shí)候?qū)crollleft的Interval

clear掉,然后setInterval啟動(dòng)scrollright

Dom事件

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script>

btn.value = "ok";

</script>

</head>

<body>

<input type="button" id="btn" value="模態(tài)對(duì)話框" οnclick="showModelessDialog('dialog.htm')"/>

</body>

</html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script>

// btn.value = "ok";

</script>

</head>

<body οnlοad="btn.value = 'ok'">

<input type="button" id="btn" value="模態(tài)對(duì)話框" οnclick="showModelessDialog('dialog.htm')"/>

</body>

</html>

在頁(yè)面加載完成后onload才會(huì)調(diào)用

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script>

// btn.value = "ok";

</script>

</head>

<body οnlοad="btn.value = 'ok';" οnunlοad="alert('洛陽(yáng)親友如相問(wèn)!')">

<input type="button" id="btn" value="模態(tài)對(duì)話框" οnclick="showModelessDialog('dialog.htm')"/>

</body>

</html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script>

// btn.value = "ok";

</script>

</head>

<body οnlοad="btn.value = 'ok';"

οnbefοreunlοad="window.event.returnValue=' 真的要放棄發(fā)帖退出嗎?'">

<input type="button" id="btn" value="模態(tài)對(duì)話框" οnclick="showModelessDialog('dialog.htm')"/>

</body>

</html>

Dom屬性

window對(duì)象的屬性1

window.location.href='http://www.itcast.cn',重新導(dǎo)向新的地址,和navigate方

法效果一樣。window.location.reload() 刷新頁(yè)面

window.event是非常重要的屬性,用來(lái)獲得發(fā)生事件時(shí)的信息,事件不局限于

window對(duì)象的事件,所有元素的事件都可以通過(guò)event屬性取到相關(guān)信息。類(lèi)似

于winForm中的e(EventArg).

? altKey屬性,bool類(lèi)型,表示發(fā)生事件時(shí)alt鍵是否被按下,類(lèi)似的還有

ctrlKey、shiftKey屬性,例子 <input type="button" value="點(diǎn)擊"

οnclick="if(event.altKey){alert('Alt點(diǎn)擊')}else{alert('普通點(diǎn)擊')}" /> ;

? clientX、clientY 發(fā)生事件時(shí)鼠標(biāo)在客戶區(qū)的坐標(biāo);screenX、screenY 發(fā)生

事件時(shí)鼠標(biāo)在屏幕上的坐標(biāo);offsetX、offsetY 發(fā)生事件時(shí)鼠標(biāo)相對(duì)于事件

源(比如點(diǎn)擊按鈕時(shí)觸發(fā)onclick)的坐標(biāo)。

? returnValue屬性,如果將returnValue設(shè)置為false,就會(huì)取消默認(rèn)事件的處

理。在超鏈接的onclick里面禁止訪問(wèn)href的頁(yè)面。在表單校驗(yàn)的時(shí)候禁止提

交表單到服務(wù)器,防止錯(cuò)誤數(shù)據(jù)提交給服務(wù)器、防止頁(yè)面刷新。

<a href="http://www.baidu.com" οnclick="alert('禁止訪問(wèn)!')">百度</a>

點(diǎn)擊百度后,頁(yè)面會(huì)彈出禁止訪問(wèn)

但是點(diǎn)擊ok后頁(yè)面還是會(huì)跳轉(zhuǎn)到百度

現(xiàn)要實(shí)現(xiàn)頁(yè)面不跳轉(zhuǎn)

要阻止跳轉(zhuǎn):

<a href="http://www.baidu.com" target="_blank" οnclick="alert('禁止訪問(wèn)!'); window.event.returnValue=false;">百度</a>

同樣表單的提交操作類(lèi)似:

<form action="Default.aspx">

<input type="submit" value="提交" οnclick="alert('數(shù)據(jù)異常禁止提交!');window.event.returnValue=false;"/>

</form>

? srcElement,獲得事件源對(duì)象。幾個(gè)事件共享一個(gè)事件響應(yīng)函數(shù)用。

? keyCode,發(fā)生事件時(shí)的按鍵值。

? button,發(fā)生事件時(shí)鼠標(biāo)按鍵,1為左鍵,2為右鍵,3為左右鍵同時(shí)按。

<body οnmοusedοwn="if(event.button==2){alert('禁止復(fù)制');}">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

</head>

<body>

<input type="button" value="href" οnclick="alert(location.href)"/>//顯示當(dāng)前頁(yè)面的地址

</body>

</html>

<input type="button" value="點(diǎn)擊"οnclick="if(event.altKey){alert('Alt點(diǎn)擊')}else{alert('普通點(diǎn)擊')}" />

定時(shí)器走馬燈易錯(cuò)點(diǎn):

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>新學(xué)期歡迎新同學(xué)</title>

<script type="text/javascript">

function scrollleft() {

var title = document.title;

var lastch = title.charAt(title.length-1);//易錯(cuò) 返回最后一個(gè)字符charAt() 方法可返回指定位置的字符。

var leftstr = title.substring(0, title.length-1);//易錯(cuò) substring截取字符串

document.title = lastch + leftstr;

}

// function scrollright() {

// var title = document.title;

// var firstch = title.charAt(title.length);

// var leftstr = title.substring(1, title.length);

// document.title = leftstr + firstch;

// }

// setInterval("scrollleft()", 500)

</script>

</head>

<body>

<input type="button" value="滾動(dòng)" οnclick=" setInterval('scrollleft()', 500)">

</body>

</html>

每點(diǎn)擊一次會(huì)啟動(dòng)一個(gè)定時(shí)器,因此滾動(dòng)的速度會(huì)加快

停止代碼寫(xiě)法:

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>新學(xué)期歡迎新同學(xué)</title>

<script type="text/javascript">

function scrollleft() {

var title = document.title;

var lastch = title.charAt(title.length-1);//易錯(cuò)

var leftstr = title.substring(0, title.length-1);//易錯(cuò)

document.title = lastch + leftstr;

}

// function scrollright() {

// var title = document.title;

// var firstch = title.charAt(title.length);

// var leftstr = title.substring(1, title.length);

// document.title = leftstr + firstch;

// }

// setInterval("scrollleft()", 500)

</script>

</head>

<body>

<input type="button" value="滾動(dòng)" οnclick="timeId=setInterval('scrollleft()', 500)">

<input type="button" value="停止定時(shí)器" οnclick=" clearInterval(timeId)">

</html>

Dom屬性

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

</head>

<body>

<input type="button" value="分享本頁(yè)給好友" οnclick="clipboardData.setData('Text','我發(fā)現(xiàn)這個(gè)頁(yè)面很黃很暴力!'

+location.href);alert('已經(jīng)將地址放到粘貼板中,趕快通知qq好友!');"/>

</body>

</html>

<body οncοpy="alert('禁止復(fù)制!');return false;">

<input type="button" value="分享本頁(yè)給好友" οnclick="clipboardData.setData('Text','我發(fā)現(xiàn)這個(gè)頁(yè)面很黃很暴力!'

+location.href);alert('已經(jīng)將地址放到粘貼板中,趕快通知qq好友!');"/>abcdefg

所有元素都有oncopy,onpaste事件

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

</head>

<body οncοpy="alert('禁止復(fù)制!');return false;">

<input type="button" value="分享本頁(yè)給好友" οnclick="clipboardData.setData('Text','我發(fā)現(xiàn)這個(gè)頁(yè)面很黃很暴力!'

+location.href);alert('已經(jīng)將地址放到粘貼板中,趕快通知qq好友!');"/>abcdefg

<br/>

<input type="text" οnpaste="alert('禁止粘貼!');return false;"/>

</body>

</html>

在網(wǎng)站中復(fù)制文章的時(shí)候,為了防止那些拷貝黨不添加文章來(lái)源,

自動(dòng)在復(fù)制的內(nèi)容后添加版權(quán)聲明。

function modifyClipboard() {

clipboardData.setData('Text', clipboardData.getData('Text')

+ '本文來(lái)自傳智播客技術(shù)專(zhuān)區(qū),轉(zhuǎn)載請(qǐng)注明來(lái)源。' +

location.href);

}

οncοpy="setTimeout('modifyClipboard()',100)"。用戶復(fù)制動(dòng)作發(fā)生

0.1秒以后再去改粘貼板中的內(nèi)容。100ms只是一個(gè)經(jīng)常取值,

寫(xiě)1000、10、50、200……都行。不能直接在oncopy里修改粘

貼板。

不能直接在oncopy中執(zhí)行對(duì)粘貼板的操作,因此設(shè)定定時(shí)器,0.1

秒以后執(zhí)行,這樣就不再oncopy的執(zhí)行調(diào)用棧上了。

<script>

function modifyClipboard() {

clipboardData.setData('Text', clipboardData.getData('Text')

+ '本文來(lái)自傳智播客技術(shù)專(zhuān)區(qū),轉(zhuǎn)載請(qǐng)注明來(lái)源。' +

location.href);

}

</script>

</head>

<body οncοpy="setTimeout('modifyClipboard()',100)">

<input type="button" value="分享本頁(yè)給好友" οnclick="clipboardData.setData('Text','我發(fā)現(xiàn)這個(gè)頁(yè)面很黃很暴力!'

+location.href);alert('已經(jīng)將地址放到粘貼板中,趕快通知qq好友!');"/>abcdefg

<br/>

<input type="text" οnpaste="alert('禁止粘貼!');return false;"/>

</body>

</html>

前進(jìn)后退導(dǎo)航

window對(duì)象的屬性4

history操作歷史記錄

? window.history.back()后退;window.history.forward()前進(jìn)。也可以

用window.history.go(-1)、window.history.go(1)前進(jìn)

document屬性。是最復(fù)雜的屬性之一。后面講解詳細(xì)使用。

第一個(gè)頁(yè)面:

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<!--<javasctipt type="text/javascript">

function modifyClipboard() {

clipboardData.setData('Text', clipboardData.getData('Text')

+ '本文來(lái)自傳智播客技術(shù)專(zhuān)區(qū),轉(zhuǎn)載請(qǐng)注明來(lái)源。' +

location.href);

}

</javascript>-->

<script>

function modifyClipboard() {

clipboardData.setData('Text', clipboardData.getData('Text')

+ '本文來(lái)自傳智播客技術(shù)專(zhuān)區(qū),轉(zhuǎn)載請(qǐng)注明來(lái)源。' +

location.href);

}

</script>

</head>

<body οncοpy="setTimeout('modifyClipboard()',100)">

<input type="button" value="分享本頁(yè)給好友" οnclick="clipboardData.setData('Text','我發(fā)現(xiàn)這個(gè)頁(yè)面很黃很暴力!'

+location.href);alert('已經(jīng)將地址放到粘貼板中,趕快通知qq好友!');"/>abcdefg

<br/>

<input type="text" οnpaste="alert('禁止粘貼!');return false;"/>

<input type="button" value="跳轉(zhuǎn)頁(yè)面" οnclick="navigate('HTMLPagehistory.htm')"/>

<input type="button" value="前進(jìn)" οnclick="window.history.forward()">

</body>

</html>

第二個(gè)頁(yè)面:

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

</head>

<body>

</body>

<input type="button" value="后退" οnclick="window.history.back()"/>

</html>

或可寫(xiě)成<a href="javascript:window.history.back()">后退</a>

這樣,效果是一樣的

document屬性。是最復(fù)雜的屬性之一。后面講解詳細(xì)使用。

document屬性1

document是window對(duì)象的一個(gè)屬性,因?yàn)槭褂脀indow對(duì)象成員

的時(shí)候可以省略window.,所以一般直接寫(xiě)document

document的方法:

? (1)write:向文檔中寫(xiě)入內(nèi)容。writeln,和write差不多,只不過(guò)

最后添加一個(gè)回車(chē)

? <input type="button" value="點(diǎn)擊" οnclick="document.write('<font

color=red>你好</font>')" />

? 在onclick等事件中寫(xiě)的代碼會(huì)沖掉頁(yè)面中的內(nèi)容,只有在頁(yè)面加載

過(guò)程中write才會(huì)與原有內(nèi)容融合在一起

? <script type="text/javascript">

? document.write('<font color=red>你好</font>');

? </script>

? write經(jīng)常在廣告代碼、整合資源代碼中被使用。見(jiàn)備注

內(nèi)容聯(lián)盟、廣告代碼、cnzz,不需要被主頁(yè)面的站長(zhǎng)去維護(hù)內(nèi)容,只

要被嵌入的js內(nèi)容提供商修改內(nèi)容,顯示的內(nèi)容就變了。

1. write

<script type="text/javascript">

document.write("<a href='http://www.itcast.cn'>傳智播客</a>");

</script>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

</head>

<script type="text/javascript">

document.write("<a href='http://www.itcast.cn'>傳智播客</a>");

</script>

<body>

<br/>

這是頁(yè)面類(lèi)容

<script type="text/javascript">

document.write("<a href='http://www.itcast.cn'>傳智播客</a>");

</script>

這是頁(yè)面類(lèi)容

</body>

</html>

Script也可以寫(xiě)在body里面

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

</head>

<script type="text/javascript">

document.write("<a href='http://www.itcast.cn'>傳智播客</a>");

</script>

<body>

<br/>

這是頁(yè)面類(lèi)容

<script type="text/javascript">

document.write("<a href='http://www.itcast.cn'>傳智播客</a>");

</script>

<input type="button" value="hello" οnclick="document.write('hello')"/>

這是頁(yè)面類(lèi)容

</body>

</html>

點(diǎn)擊hello按鈕感覺(jué)會(huì)在新頁(yè)面打印出來(lái),但其實(shí)還是當(dāng)前的頁(yè)面只有在頁(yè)面加載

過(guò)程中write才會(huì)與原有內(nèi)容融合在一起(onlick頁(yè)面已經(jīng)加載完成)

廣告聯(lián)盟

http://news.baidu.com/newscode.html 百度廣告獲取廣告代碼

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<style type=text/css> div{font-size:12px;font-family:arial}.baidu{font-size:14px;line-height:24px;font-family:arial} a,a:link{color:#0000cc;}

.baidu span{color:#6f6f6f;font-size:12px} a.more{color:#008000;}a.blk{color:#000;font-weight:bold;}</style>

</head>

<script type="text/javascript">

document.write("<a href='http://www.itcast.cn'>傳智播客</a>");

</script>

<body>

<br/>

這是頁(yè)面類(lèi)容

<script language="JavaScript" type="text/JavaScript" src="http://news.baidu.com/ns?word=title%3A%E8%AE%A1%E7%AE%97%E6%9C%BA&tn=newsfcu&from=news&cl=2&rn=5&ct=0"></script>

<script type="text/javascript">

document.write("<a href='http://www.itcast.cn'>傳智播客</a>");

</script>

<input type="button" value="hello" οnclick="document.write('hello')"/>

這是頁(yè)面類(lèi)容

</body>

</html>

可以直接在記事本里面打開(kāi)別人網(wǎng)站的js代碼

http://news.baidu.com/ns?word=title%3A%E8%AE%A1%E7%AE%97%E6%9C%BA&tn=newsfcu&from=news&cl=2&rn=5&ct=0

Cnzz數(shù)據(jù)專(zhuān)家

document方法

getElementById方法(非常常用),根據(jù)元素的Id獲得對(duì)象,網(wǎng)頁(yè)中id不能

重復(fù)。也可以直接通過(guò)元素的id來(lái)引用元素,但是有有效范圍、

form1.textbox1之類(lèi)的問(wèn)題,因此不建議直接通過(guò)id操作元素,而是通過(guò)

getElementById

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function btnClick() {

alert(textbox1.value);

}

</script>

</head>

<body>

<input type="text" id="textbox1" />

<input type="button" value="點(diǎn)一下" οnclick="btnClick()"/>

</body>

</html>

通過(guò)控件的id取value值但不推薦這樣使用textbox1.value會(huì)出現(xiàn)無(wú)法取到的情況

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function btnClick() {

alert(textbox1.value);

}

function btnClick2() {

alert(textbox2.value);

}

</script>

</head>

<body>

<input type="text" id="textbox1" />

<input type="button" value="點(diǎn)一下" οnclick="btnClick()"/>

<form action="Default.aspx">

<input type="text" id="textbox2" />

<input type="button" value="點(diǎn)一下" οnclick="btnClick2()"/>

</form>

</body>

</html>

錯(cuò)誤原因:input放在了form中,引用時(shí)不能直接引用input的id

正確用法:

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function btnClick() {

alert(textbox1.value);

}

function btnClick2() {

// alert(textbox2.value);

alert(form1.textbox2.value);

}

</script>

</head>

<body>

<input type="text" id="textbox1" />

<input type="button" value="點(diǎn)一下" οnclick="btnClick()"/>

<form action="Default.aspx" id="form1">

<input type="text" id="textbox2" />

<input type="button" value="點(diǎn)一下" οnclick="btnClick2()"/>

</form>

</body>

</html>

這樣使用每次要找到form的id,再通過(guò)這個(gè)id來(lái)找控件的id略顯麻煩,因此推薦使用另外一種方法:getElementById(‘控件名’)

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function btnClick() {

var txt = document.getElementById("textbox1");

alert(txt.value);

// alert(textbox1.value);

}

function btnClick2() {

// alert(textbox2.value);

// alert(form1.textbox2.value);

var txt = document.getElementById("textbox2");

alert(txt.value);

}

</script>

</head>

<body>

<input type="text" id="textbox1" />

<input type="button" value="點(diǎn)一下" οnclick="btnClick()"/>

<form action="Default.aspx" id="form1">

<input type="text" id="textbox2" />

<input type="button" value="點(diǎn)一下" οnclick="btnClick2()"/>

</form>

</body>

</html>

(*)getElementsByName,根據(jù)元素的name獲得對(duì)象,由于頁(yè)面中元素

的name可以重復(fù),比如多個(gè)RadioButton的name一樣,因此

getElementsByName返回值是對(duì)象數(shù)組。

易錯(cuò)點(diǎn):

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function btnClick() {

var radios=document.getElementsByName("gender");

for(var r in radios)

{

alert(r.value);

}

}

</script>

</head>

<body>

<input type="radio" value="男" name="gender"/>男

<input type="radio" value="女" name="gender"/>女

<input type="radio" value="未知" name="gender"/>未知

<input type="button" value="click" οnclick="btnClick()"/>

</body>

</html>

正確方法:

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function btnClick() {

var radios = document.getElementsByName("gender");

// for(var r in radios)

// {

// alert(r.value);

// }

// }在js中不像C#中的foreach,并不會(huì)遍歷每個(gè)元素,而是遍歷的key

for (var i = 0; i < radios.length; i++) {

var radio = radios[i];

alert(radio.value);

}

}

</script>

</head>

<body>

<input type="radio" value="男" name="gender"/>男

<input type="radio" value="女" name="gender"/>女

<input type="radio" value="未知" name="gender"/>未知

<input type="button" value="click" οnclick="btnClick()"/>

</body>

</html>

(*)getElementsByTagName,獲得指定標(biāo)簽名稱(chēng)的元素?cái)?shù)組,比如

getElementsByTagName("p")可以獲得所有的<p>標(biāo)簽。

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function btnClick() {

var radios = document.getElementsByName("gender");

// for(var r in radios)

// {

// alert(r.value);

// }

// }在js中不像C#中的foreach,并不會(huì)遍歷每個(gè)元素,而是遍歷的key

for (var i = 0; i < radios.length; i++) {

var radio = radios[i];

alert(radio.value);

}

}

function btnClick2() {

var inputs = document.getElementsByTagName("input");

for (var i = 0; i < inputs.length; i++) {

var input = inputs[i];

input.value = "hello";

}

}

</script>

</head>

<body>

<input type="radio" value="男" name="gender"/>男

<input type="radio" value="女" name="gender"/>女

<input type="radio" value="未知" name="gender"/>未知

<input type="button" value="click" οnclick="btnClick()"/>

<input type="text"/>

<input type="text"/>

<input type="text"/>

<input type="text"/>

<input type="text"/>

<input type="button" value="bytagname" οnclick="btnClick2()"/>

</body>

</html>

案例:點(diǎn)擊一個(gè)按鈕,被點(diǎn)擊的按鈕顯示“嗚嗚”,其他按鈕顯示“哈哈”。

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function initEvent() {

var inputs = document.getElementsByTagName("input");

for (var i = 0; i < inputs.length;i++ ) {

var input = inputs[i];

input.onclick = btnClick;

}

}

function btnClick() {

alert("點(diǎn)了!");

}

</script>

</head>

<body οnlοad="initEvent()">

<input type="button" value="哈哈"/>

<input type="button" value="哈哈"/>

<input type="button" value="哈哈"/>

<input type="button" value="哈哈"/>

<input type="button" value="哈哈"/>

</body>

</html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function initEvent() {

var inputs = document.getElementsByTagName("input");

for (var i = 0; i < inputs.length;i++ ) {

var input = inputs[i];

// input.onclick = btnClick;

// window.event.srcElement,獲得引發(fā)事件的控件

input.onclick = btnClick;

}

}

function btnClick() {

var inputs = document.getElementsByTagName("input");

for (var i = 0; i < inputs.length; i++) {

var input = inputs[i];

if (input == window.event.srcElement) {

input.value = "嗚嗚";

}

else {

input.value = "哈哈";

}

}

}

// function btnClick() {

// alert("點(diǎn)了!");

// }

</script>

</head>

<body οnlοad="initEvent()">

<input type="button" value="哈哈"/>

<input type="button" value="哈哈"/>

<input type="button" value="哈哈"/>

<input type="button" value="哈哈"/>

<input type="button" value="哈哈"/>

</body>

</html>

案例:十秒鐘后協(xié)議文本框下的注冊(cè)按鈕才能點(diǎn)擊,時(shí)鐘倒數(shù)。

(btn.disabled = true )

思路:1.注冊(cè)按鈕初始狀態(tài)為不可用

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>注冊(cè)</title>

<script type="text/javascript">

</script>

</head>

<body>

<textarea></textarea>

<input type="button" value="同意" disabled="disabled"/>

</body>

</html>

2. 啟動(dòng)定時(shí)器setInterval,1秒鐘運(yùn)行一次CountDown的方法,設(shè)定初始值10的全局變量,在

countDonw方法中對(duì)全局變量倒數(shù)

3. 將倒數(shù)的值寫(xiě)到按鈕上(請(qǐng)仔細(xì)閱讀協(xié)議(還剩8秒))

4. 直到全局變量的值<=0時(shí)按鈕可用,并且設(shè)定按鈕上文本為同意

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>注冊(cè)</title>

<script type="text/javascript">

var leftScconds = 10;

var intervalId;

function CountDown() {

var btnReg = document.getElementById("btnReg");

if(btnReg)//如果網(wǎng)頁(yè)的加載速度非常慢的話,可能定時(shí)器運(yùn)行的時(shí)候控件還沒(méi)有加載!

{

if (leftScconds <= 0) {

btnReg.value = "同意";

btnReg.disabled = ""; //或者btnReg.disabled=false;

clearInterval(intervalId);//停止計(jì)時(shí)器

}

else {

btnReg.value = "請(qǐng)仔細(xì)閱讀協(xié)議(還剩" + leftScconds + "秒)";

leftScconds--;

}

}

}

intervalId=setInterval("CountDown()", 1000);

</script>

</head>

<body>

<textarea></textarea>

<input type="button" value="同意" disabled="disabled" id="btnReg"/ >

</body>

</html>

練習(xí):加法計(jì)算器。兩個(gè)文本框中輸入數(shù)字,點(diǎn)擊【=】按鈕將相加的結(jié)果

放到第三個(gè)文本框中。

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function calClick() {

var value1 = document.getElementById("text1").value;

var value2 = document.getElementById("text2").value;

document.getElementById("text3").value = value1 + value2;

}

</script>

</head>

<body>

<input type="text" id="text1"/>+<input type="text" id="text2"/>=

<input type="button" οnclick="calClick()" value="="/><input type="text" id="text3" readonly="readonly"/>

</body>

</html>

執(zhí)行的結(jié)果為拼接字符串

正確的做法為:(轉(zhuǎn)換為int類(lèi)型)

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function calClick() {

var value1 = document.getElementById("text1").value;

var value2 = document.getElementById("text2").value;

value1 = parseInt(value1, 10);

value2= parseInt(value2, 10);

document.getElementById("text3").value = value1 + value2;

}

</script>

</head>

<body>

<input type="text" id="text1"/>+<input type="text" id="text2"/>=

<input type="button" οnclick="calClick()" value="="/><input type="text" id="text3" readonly="readonly"/>

</body>

</html>

注意parseInt(參數(shù)一,參數(shù)二)

參數(shù)一為要轉(zhuǎn)換的數(shù),參數(shù)二為結(jié)果的進(jìn)制數(shù)(這里是十進(jìn)制,所以就是10)

練習(xí):美女時(shí)鐘。

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function ReFlash() {

var imgMM = document.getElementById("imgMM");

if (!imgMM) {

return;

}

else {

imgMM.src = "Images/1.jpg";

}

}

setInterval("ReFlash()",1000);

</script>

</head>

<body>

<img id="imgMM" src=""/>

</body>

</html>

完整代碼如下:

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function ReFlash() {

var imgMM = document.getElementById("imgMM");

if (!imgMM) {

return;

}

// else {

// imgMM.src = "Images/1.jpg";

// }

var now = new Date();

var filename = now.getHours() + "_" + now.getSeconds() + ".jpg";

imgMM.src = "mm/" + filename;

}

setInterval("ReFlash()",1000);

</script>

</head>

<body>

<img id="imgMM" src=""/>

</body>

</html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<script type="text/javascript">

function Fill2Len(i) {

if (i < 10) {

return "0" + i;

}

else {

return i;

}

}

function ReFlash() {

var imgMM = document.getElementById("imgMM");

if (!imgMM) {

return;

}

// else {

// imgMM.src = "Images/1.jpg";

// }

var now = new Date();

var filename = Fill2Len(now.getHours()) + "_" + Fill2Len(now.getSeconds()) + ".jpg";

imgMM.src = "mm/" + filename;

}

setInterval("ReFlash()",1000);

</script>

</head>

<body οnlοad="ReFlash()">

<img id="imgMM" src=""/>

</body>

</html>

轉(zhuǎn)載于:https://www.cnblogs.com/seclusively/p/3789487.html

總結(jié)

以上是生活随笔為你收集整理的跟着杨中科学习asp.net之dom的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。