javascript 語法基礎 想學習js的朋友可以看看

1:javascript區分大小寫 
2:javascript每一條語句必須以";"結束,與C語言一樣 
3:輸出:document.write("字符串")--->還可以輸出對應的html標記 
4:改變窗體的顏色document.bgColor="red"; 
4:類型轉換:parseInt,parseFloat 
5:隨機函數:parseInt(Math.random()*90+10) 產生10--100的隨機數 
5:彈出對話框:alert("提示的內容") 
5:if if...else,for,while,switch case 
5:如何定義數組: 
1)一維數組: 
a=new Array();[定義數組時不需要指定長度] 
a[0]=1; 
a[1]=1; 
a[2]=1; 
s=0; 
for(i=0;i<a.length;i++) 
{ 
s+=a[i]; 
} 
2)二維數組: 
city=new Array(); 
city[0]=new Array("湖北省","武漢"); 
city[1]=new Array("湖北省","仙桃"); 
city[2]=new Array("湖北省","洪湖"); 
city[3]=new Array("福建省","廣州"); 
city[4]=new Array("福建省","廈門"); 
city[5]=new Array("福建省","漳州"); 
5:javascript裏面的函數,及函數的調用,以及變量的作用範圍 
6:彈出詢問對話框:confirm("詢問的內容") 
7:關閉窗體:window.opener=null;window.close(); 
8:打開一個窗體: 
1)變量名=window.open("網頁名") 開一個新窗口 
2)變量名=window.open("網頁名","名字","height=200px,width=300px") 
3)打開窗口在屏幕中心彈出 
t=window.open('dotest.htm','test','height=400px,width=500px'); 
t.moveTo((screen.width-500)/2,(screen.height-400)/2; 
4)window.location="url" 不會打開一個新窗口 
5)以模態窗體彈出 
window.showModalDialog('dotest.htm','','dialogWidth=600px;dialogHeight=500px'); 
9:刷新一個窗體: 
window.location.reload(); 
10:得到本窗體的表單元素的值:表單名.元素名.value 
11:如何在另外一個窗體中來訪問前一個窗體的表單元素 
A:模態窗體: 
源窗體 
1)window.showModalDialog('dotest.htm',window,'dialogWidth=600px;dialogHeight=500px'); 
注意名字一定要寫上window 
2)window.dialogArguments.form1.txtuser.value 
B:非模態窗體: 
源窗體: 
window.open 
目的窗體: 
window.opener.表單名.表單元素名.value 
12:如何通過模態窗體向父窗體返回值: 
源窗體: 
t=window.showModalDialog(參數) 
alert(t) 
目的窗體: 
window.returnValue=值;window.opener=null;window.close(); 
13:如何在關閉子窗體的同時,刷新父窗體 
A)非模態窗口 
源頁面: 
window.open("頁面") 
目的頁面: 
window.opener.location.href=window.opener.location.href; 
window.opener=null;window.close(); 
B)模態窗口 
源頁面: 
window.showModalDialog();-------有暫停代碼的用途 
window.location.reload(); 
目的頁面: 
window.opener=null;window.close(); 
14:設置狀態欄文字:window.status 
15)轉換字符串爲數值:parseInt("字符串"),parseFloat("字符串") 
16)得到當前的時間 
var date=new Date(); 
document.write(date.toLocaleTimeString()); 
17):得到當前的日期: 
var date=new Date(); 
document.write(date.toLocaleDateString()); 
18):回到上一個頁面。注意不是刷新 
history.go(-1) 
19:改變某個對像的背景色 
this.style.backgroundColor='yellow', 
this.style.color='文字顏色' 
20:設爲首頁: 
this.style.behavior='url(#default#homepage)';this.setHomePage('你的網頁'); 
21):指定讓代碼過幾分鐘後自動反覆執行某個過程. 
setInterval("js代碼",1000) 
舉例:讓一個背景不斷變換[頁面閃得很厲害] 
var index=1; 
function ChangePic() 
{ 
form1.p1.src=index+".jpg"; 
index=index+1; 
if (index==4) 
{ 
index=1; 
} 
} 
setInterval("ChangePic(index)",1000); 
改進:[先定義數組,把圖片預裝在內存中] 
pic=new Array(4); 
pic[0]=new Image(); 
pic[1]=new Image(); 
pic[2]=new Image(); 
pic[3]=new Image(); 
pic[0].src="1.jpg"; 
pic[1].src="2.jpg"; 
pic[2].src="3.jpg"; 
pic[3].src="4.jpg"; 
function ClearText() 
{ 
form1.p1.src=pic[index].src; 
index=index+1; 
if (index==4) 
{ 
index=1; 
} 
} 
setInterval("ClearText(index)",1000); 
23):讓指定的代碼在多少時間之後執行,但只執行一次: 
setTimeout("js代碼",1000); 
24):清空一個表單中的所有文本框的文本 
for(i=0;i<form1.elements.length;i++) 
{ 
if (form1.elements[i].type=="text") 
{ 
form1.elements[i].value=""; 
} 
} 
25)運行一個可執行文件: 
obj=new ActiveXObject("wscript.shell"); 
obj.run("calc.exe"); 
26)Java script中的事件 
A)onmouseove:鼠標到達 
B)onmouseout:鼠標離開事件 
C)onclick:單擊事件 
D)onKeypress:鍵被按下時,可以通過event.keyCode得到按下鍵的Asii碼 
E)load事件:把代碼直接寫在<script></script>就相當於Load事件 
F)onsubmit:當表單提交時會觸發表單提交事件 
原理:當用戶按下提交按鈕時,會觸發表單的onsubmit事件。在這個事件裏面根據用戶返回 的值(true,false)來決定是否需要提交表單,爲true時會提交,爲false不會提交所 以我們經常會用一個函數來進行數據驗證。 
舉例: 
1)<marquee scrollamount=3 οnmοuseοver=this.stop(); οnmοuseοut=this.start();>文字移動 
2)<input type=text name=txtPostalCode onKeypress="if (event.keyCode < 45 || event.keyCode > 57) event.keyCode=0;">//只能輸入數字 
3)使表格的選中的行出現不同的顏色 
4)阻止用戶往文本框裏面輸入值: 
οnkeypress="reuturn false" 
說明:在表單元素的任何事件中,只要加上return false就不會觸發此事件 
25:正則表達式: 
像dos裏面的通配符一樣,用來檢測一個輸入是否滿足特定的通配符 
^:代表一行字符的開頭 
$:代表一行字符的結束 
[]:用來定義可接受的字符 
[a-z]:表示可以接受小寫字母 
[A-Z]:表示可以接受大寫字母 
[0-9]:表示可以接受數字 
[0-9,_,a]:表示可以接受數字,下劃線或字母a 
[a-zA-Z0-9]:表示既可以接受英文字母,又可以接受數字 
[^]:不能接受的字符 
[^a-z]:不能接受英文字母 
{}:用來定義必須輸入的字符個數 
{3}:必須含有3個字符。 
{4,8}:至少含有4個至多含有8個字符 
[0-9]{3}:必須輸入3個數字 
[a-zA-Z]{4,6}:必須輸入4到6位英文字母 
{n,}:表示至少可以輸入n個字符。 
[a-z]{0,}:表示可以接受0個或多個英文字母 
[a-z]{1,}:表示可以接受至少1個英文字母 
+:匹配前面字符的1次或多次-----相當於{1,} 
*:匹配前面字符的0次或多次-----相當於{0,} 
.:表示任意字符 
舉例: 
frm1.user.value.match("^[0-9a-zA-z]{5,8}$") 
26:如何利用Js對錶單元素進行控制: 
A:文本框: 
1)得到文本框的文本: 
表單名.表單元素名.value 
2)獲得焦點: 
表單名.表單元素名.focus() 
B:按鈕: 
1)使按鈕不可用: 
表單名.按鈕名.disabled=true (true,不可用;false 可用) 
2)使按鈕不可見: 
表單名.按鈕名.style.display="none" 不可見 
表單名.按鈕名.style.display="" 可見 
if (表單名.按鈕名.style.display=="") 如果可見 
C)單選框: 
得到單選框所選中的值 [各個單選框的名稱一定要一樣,值不一樣] 
for(i=0;i<單選框數組.length;i++) 
if (單選框數組[i].checked) break; 
返回 單選框數組[i].value就行了 

D):得到所有打勾的複選框的值 
for(i=0;i<複選框數組.length;i++) 
if (複選框數組[i].checked) 執行對應的語句 
E):下拉框 
A)得到所選中的值-->下拉框.value 
B)刪除裏面的全部內容----->下拉框.length=0; 
C)刪除裏面的指定項--->下拉框.options.remove(下標); 
D)往裏面添加一項----->下拉框.options[下拉框.length]=new Option("標籤","值"); 
注意下拉框的options是一個數組,用來存儲所有選擇,下標是從零開始的 
E)selectedIndex:得到或設置所選中的項的下標 
F)options[k].value:得到第i項的值 
G)onchange事件:當選中項發生改變時,觸發 

舉例:在客戶端實現兩個下拉框的聯動[注意定義一維數組] 
city=new Array(); 
city[0]=new Array("湖北省","武漢"); 
city[1]=new Array("湖北省","仙桃"); 
city[2]=new Array("湖北省","洪湖"); 
city[3]=new Array("福建省","廣州"); 
city[4]=new Array("福建省","廈門"); 
city[5]=new Array("福建省","漳州"); 
27:創建一個模塊的js的文件,然後在頁面中來調用 
A)直接新建一個*.js文件: 
直接寫上函數,不用加<script type="text/javascript">標記 
B)在目的頁面中通過:<script src="JScript.js" type="text/javascript"></script>來引用 
28:多個對像共享同一個事件: 
<script type="text/javascript" for="TabItem" event="onmouseover"> 
var TabItem=document.getElementsByName("TabItem"); 
for(i=0;i<TabItem.length;i++) 
{ 
if (TabItem[i]==this) 
{ 
TabItem[i].background="images/nh-bg.gif"; 
} 
else 
{ 
TabItem[i].background=""; 
} 
} 
</script> 

第四章:C#.net語法基礎 
在這一章中,你將要學習以下一些內容 
1:編寫asp.net語言的選擇 
2:vs.net 2005 界面技巧 
3:如何在頁面中加入服務器端代碼 
4:如何在頁面中導入命名空間 
5:C#.net語法基礎 
6:動態的由服務器端向客戶端加入javascript 


編寫asp.net語言的選擇: 

編寫asp.net程序,net爲我們提供了以下幾種語言vb.net,c#.net,j#.net其中vb.net語言是最簡單,最容易學的語言,它繼承了vb的大部分語法,同時又加入了一整套.net framework,利用vb.net開發asp.net程序是最容易的一門的語言C#.net是整個.net的核語言,它繼承了c,c++的大部分語法,較vb.net有點複雜,但是執行程序的效率比vb.net更高,j#.net是繼承了javascript的大部分語法,一般很少用。我們選擇C#.net語言作來開發asp.net程序的語言 

vs.net 2005 界面技巧 
1)設置顯示解決方案---------:工具--選項-->項目和解決方案-->常規 
2)對單網頁可以進行生成,不需要對整個項目進行生成 
3)設計模式與源文件模式(html模式),後代碼模式(類),讓頁面一加載時自動顯示設計模式 
4)文檔大綱窗口:可以清楚層現html標籤的層次關係:視圖-->其它窗口--->文檔大綱 
5)Html標籤導航:切換到源文件模式,單右-->選擇最下面的"選中html標籤" 
6)源文件模式下控件拖曳 
7)多文檔頁面顯示------ctrl+tab可以在不同文檔之間切換 
8)Asp.net網站特殊文件夾: 
A:App_Code用來存放代碼文件(比如:*.cs,類文件) 
B:App_Date用來存放網站數據文件(數據庫文件,xml文件等) 
C:還有很多其它的特殊文件夾 
9)程序代碼重構: 
A:重構屬性 
B:重構方法 
10)Asp.net網站的動態編譯: 
A:當asp.net第一次運行時,IIs會自動爲asp.net生成一個dll,所以第一次非常慢 
以後只要文件的內容的沒有發生改變,IIs就會延用上一次生成的dll,不會再次生成 
新的dll,所以第一次運行慢,以後運行快 
B:如果asp.net的源文件內容一旦發生改變,則IIs會重新生在一個dll,利用這個特點 
我們可以在vs.net環境中寫程序,而在IIs中直接打開網站後刷新即可 

如何在頁面中加入服務器端代碼 
C#.net只能被服務器端的IIS來編譯執行,所以C#.net語言是一定要運行於服務器端 
A:直接把代碼加入"後代碼文件"的事件裏面[採用CodeBehind] 
B:直接把代碼加入"頁面文件"裏面此時一定要加<% %>來限制 [採用CodeBeside] 
1)如果是單純的C#代碼,可以直接用<%%>括起來,並且可以有多個<%%> 
2)如果是函數,則一定要緊跟在<%page %>命令符下面,並按照如下的格式: 
<script language="C#" runat="server"> 
private int sum(int a, int b) 
{ 
return a + b; 
} 
</script> 
3)如果要得到一個變量的值,可以寫上<%=變量名%> 
比如: 
今天是:<%=System.DateTime.Today.ToLongDateString() %> 

如何在頁面中導入命名空間 
1)在代碼文件中:使用using語句 
2)在頁面文件中:使用<%@ Import 語句比如: 
<%@ Import Namespace="System.Data.SqlClient" %> 
位置在<@ page> 的下面 


C#.net的語法基礎 
C#.net的數據類型: 
Int,Double,String,Char,object數據類型(相當於vb裏面的變體類型) 
定義變量: 
類型標識符 變量名; 
給變量賦初值: 
可以在定義的時候,給變量賦初值---Int a=5; 
也可以在定義之後,給變量賦初值 
運算符: 
a):賦值運算符:= 
b):算術運算符:+,-,*,\(整除),%(餘) 
c):字符串聯接符:+ 
d):關係運算符:>,>=,<,<=,== 
e):邏輯運算符:&&,||,! 
f):複合運算符:x+=3,x*=6等 

asp.net的輸入和輸出: 
a):輸出 
1):輸出單純的字符串: response.write("字符串"); 
2):輸出html標記:response.write("html標記")[重要重要] 
比如:Response.Write("<a href='C:\WINNT\Web\Wallpaper\城堡.jpg'>我的鏈接</a>") 
3):輸出js腳本:Response.Write("<script>js代碼</script>"); 
4):輸出當前的日期和時間: 
Response.Write(DateTime.Now.ToLongTimeString()):時間 
Response.Write(DateTime.Now.ToLongDateString()):日期 
b):輸入:利用控件進行輸入比如:textbox控件等 

if 語句,select case語句 
舉例: 
A)讓用戶輸入兩個數和一個操作符,求出運算結果 
B)讓用戶輸入三門功課求出平均分和總分並根據求出的結果判斷優,良,差 
C)根據星期把對應的背景圖片換成是"星期"的圖片 

循環語句:for,while循環 
舉例: 
A)輸出Moon1.gif~Moon8.gif這幾個文件裏面的圖片 
B)利用表格打印九九乘法表 
C)實現擲骰子游戲 
7:數組: 
1):聲明與初始化 
靜態數組的聲明與初始化: 
string[] NameList = new string[6]; 
進行初始化 
string[] NameList=new string[5] {"張三","李四","王五","趙六","王七"}; 
動態數組的初始化: 
string[] NameList=new string[] {"張三","李四","王五","趙六","王七"}; 
2):數組.length:用來讀出數組的長度 
舉例: 
A)定義姓名,語文,數學,化學數組,通過函數與表格求出總分與平均分 
B)利用數組和表格打印出一些商品的列表清單 

8:哈希表(HashTable):是一種兩欄數據結構。一欄是鍵(Key),一欄是值(Value) 
創建哈希表: 
Hashtable has = new Hashtable(); 
添加數據: 
has.add("鍵",值) 
獲得指定鍵的值 
has["鍵"] 
檢查是否已經存在某個鍵 
has.ContainsKey("鍵") 
刪除某個鍵 
has.Remove("鍵") 
清除全部鍵 
has.clear(); 
訪問哈希表的內容: 
Hashtable ht = new Hashtable(); 
foreach (DictionaryEntry item in ht) 

26:動態的向服務器(web控件)加入客戶端的javascript[重要] 
以前的方法都是根據事先寫好的函數,然後再向客戶端去調用,但有時候,可能需要服務器 
端傳來的數據,再在客戶端進行處理,這個時候就要動態的向客戶端添加代碼 
方法: 
在Page_Load事件裏面寫上: 
1:RegisterClientScriptBlock("chen", js)方法來註冊js 
2:IsClientScriptBlockRegistered("chen")方法來檢驗些js是否已經註冊,從而 
可以避免一個js被反覆註冊 
舉例: 
1)從數據庫裏面讀出職工信息,放入客戶端的js中。形式如: 
Worker=new Array() 
Worker[0]=new Array('張三','BM1'); 
Worker[1]=new Array('李四','BM1'); 
Worker[2]=new Array('王五','BM2'); 
Worker[3]=new Array('趙六','BM2'); 
2)通過數據庫,實現兩個下拉框的聯動(無刷新)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章