No pains, No gain
          走過、路過、千萬別錯過
          posts - 23,comments - 1,trackbacks - 0

          表格部分代碼如下:

          <table id="testTbl" border=1>

          <tr id="tr1">

          <td width=6%><input type=checkbox id="box1"></td>

          <td id="b">第一行</td>

          </tr>

          <tr id="tr2">

          <td width=6%><input type=checkbox id="box2"></td>

          <td id="b">第二行</td>

          </tr>

          <tr>

          <td width=6%><input type=checkbox id="box3"></td>

          <td>第三行</td>

          </tr>

          </table>

          動態添加表行的javascript函數如下:

          <script language="javascript">

          function addRow(){

          //添加一行

          var newTr = testTbl.insertRow();

          //設置行背景

          newTr.bgColor = '#008040';

          //添加兩列

          var newTd0 = newTr.insertCell();

          var newTd1 = newTr.insertCell();

          //設置列內容和屬性

          newTd0.innerHTML = '<input type=checkbox id="box4">';

          newTd1.innerText= '新增加的行';
          }
          </script>

          <BR>
          <a href="#" onclick="addRow();">增加一行</a>


          就這么簡單,做點詳細的說明:

          1、inserRow()和insertCell()函數

          insertRow()函數可以帶參數,形式如下:

          insertRow(index)

          這個函數將新行添加到index的那一行前,比如insertRow(0),是將新行添加到第一行之前。默認的insertRow()函數相當于insertRow(-1),將新行添加到表的最后。

          insertCell()和insertRow的用法相同。

          2、動態設置屬性和事件

          上面行數中的innerHTML和innerText都是列的屬性。

          這個inner,就是“inner”到<tb></tb>之間,innerText是添加到<tb></tb>之間的文本,innerHTML是添加到<tb></tb>之間的HTML代碼(這個so簡單,這個解釋挺多余的)

          設置其他屬性也是用同樣的方式,比如,設置行背景色

          newTr.bgColor = 'red';

          ?

          設置事件也一樣,需要簡單說明一點。

          比如,我要讓點擊新加行的時候執行一個自己定義的函數 newClick,newClick行數如下:

          function newClick(){

          alert("這是新添加的行");

          對onclick事件設置這個函數的代碼如下:

          newTr.onclick = newClick;

          這里需要主義的是,=后面的部分必須是函數名,而且不能帶引號,

          newTr.onclick = newClick();

          newTr.onclick = 'newClick';

          newTr.onclick = "newClick";

          上面的寫法都是錯誤的。

          為什么,其實知道為什么沒有什么意思,知道怎么用就OK了,如果不想知道,可以跳過下面這一段。

          ?

          實際上這個=后面的newClick是指向自己定義的newClick函數的指針,javascript里面函數名就是指向函數的指針,加了引號括號什么的瀏覽器就找不到那個函數了。

          下面的寫法,也是正確的

          newTr.onclick = function newClick(){

          alert("這是新添加的行");

          這個使用函數名實際上是一樣的

          設置其他的事件用法相同。

          posted on 2007-01-18 14:39 一縷青煙 閱讀(1818) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 高雄县| 双城市| 滦南县| 苏尼特右旗| 白朗县| 通州市| 和林格尔县| 怀宁县| 合川市| 胶南市| 巴彦县| 隆林| 岳普湖县| 蒲城县| 五指山市| 永康市| 车险| 上犹县| 密云县| 武夷山市| 肃宁县| 通城县| 长治市| 嘉善县| 巴青县| 城固县| 高阳县| 宁国市| 龙州县| 双牌县| 时尚| 清流县| 临江市| 尉氏县| 商丘市| 乐清市| 福建省| 申扎县| 诸城市| 徐水县| 洞口县|