2007-07-07

顯示物件的所有屬性

很多時候在寫 JavaScript 時,會因為無法確定變數的狀況,而找不到是那裡出現錯誤,最好的辦法就是顯示變數的所有屬性,以確認目前的狀況。

利用這個函數可以顯示傳入的物件或變數的狀況,會開啟新的頁面顯示所有的資訊。

/*Show Object Element ( 顯示物件的元素 ) */
function SOE(Obj){
var i, outText = "", eName, eValue;

for (i in Obj) {
/* 加入例外處裡 */
try {
/* 設定元素名稱的樣式 */
eName = i.bold().fontcolor('#770077');
/* 設定元素數值的樣式 */
eValue=(Obj[i]+'').replace("function","function".bold());
eValue = eValue.fontcolor('#0000ff');
/* 將資料串接在一起 */
outText += eName + " = " + eValue + "<hr/>";
}catch (e) {
/* 處理例外事件的訊息 */
eName = (e + '').replace(/" /g, '"< br/>');
outText += eName.fontcolor('red') + "<hr/>";
}
}

/* 設定顯示的視窗 */
i=window.open("","","width=450,height=550,"
+"scrollbars=yes,resizable=yes");
/* 將資料加入視窗的文件中,並設定字體定寬及大小 */
i.document.body.innerHTML = outText.fixed().fontsize(2);
/* 設定顯示視窗的標題 */
i.document.title = 'Show Object Element';
/* 讓顯示視窗取得焦點 */
i.focus();
}

2007-07-05

動態新增 select 的選項


Obj.options[number]=new Option(text,value);

Obj:select 的物件
number:選項的編號(第幾個選項),起始值為 0
text:選項所顯示的文字
value:選項的值

EX:
Obj.length=0; /* 先將選項的數目設定為 0 */

/* 再依序增加選項,當然也可以用迴圈處理 */
Obj.options[Obj.length]=new Option("中正區","100");
Obj.options[Obj.length]=new Option("大同區","103");
Obj.options[Obj.length]=new Option("中山區","104");

/* length 會因為選項的增加而改變,所以是一個可以善用的變數 */

利用 JavaScript 將表格模擬成按鈕

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=big5"/>
    <title>利用 JavaScript 將表格模擬成按鈕</title>
    <script language="JavaScript" type="text/javascript">
      <!--
      var mouseOverColor = "#CCEEEE";
      var mouseOutColor = "#FFFFFF";
      var mouseDownColor = "#99CCCC";

      /* 滑鼠游標重疊時的顏色及滑鼠指標 */
      function mOver(Obj){
          Obj.style.backgroundColor = mouseOverColor;
          Obj.style.cursor = "hand";
      }

      /* 滑鼠游標離開時的顏色 */
      function mOut(Obj){
          Obj.style.backgroundColor = mouseOutColor;
      }

      /* 滑鼠游標按下時的顏色 */
      function mDown(Obj){
          Obj.style.backgroundColor = mouseDownColor;
      }

      -->
    </script>
  </head>
  <body>
    <!-- 利用滑鼠事件去製造相對應的功能
    onmousedown 當滑鼠按下時的事件
    onmouseover 當滑鼠指標與物件重疊時的事件
    onmouseout 當滑鼠指標離開物件時的事件
    -->
    <table width="200" border="1">
      <tr>
        <td onmousedown="mDown(this)"
            onmouseover="mOver(this)"
            onmouseout="mOut(this)">
        </td>
      </tr>
    </table>
  </body>
</html>

2007-07-03

ASP網頁設計

由於為了幫朋友寫一個人員管理程式,最近開始重新學習寫ASP了,為什麼要用ASP呢?ASP的系統哪麼不穩,而且又常當機,但是沒辦法的是架設的平台只有ASP而已,連 SQL Server 都沒有,只好透過 ODBC 去處理 Access 資料庫的問題了。

在開始幫朋友撰寫程式之前,我找了一個類似的題目做練習,”無線電修復記錄管理系統”這個系統雖然很小,但對於系統中的細節可是非常注重,而且為了分擔 Server 負擔我用了很多 JavaScript 去運算資料的處理,也再次複習了 JavaScript 的運用。

開發工具是用 Dreamweaver 8 ,這是一個很好用的工具,但就像朋友所說的,這個工具會讓自己感覺像一個不會寫網頁的麻瓜,到現在關於 ASP 的語法和架構我還是不是很了解,這真是糟糕的一件事,也就是說沒有 Dreamweaver 8 我就沒辦法寫ASP了,對於很多其他的功能要自己去寫也不知道該怎麼寫,但為了開發一個簡易的管理程式來說,這已經很夠了。