發布乙個鎖定行列的一種方法

2021-06-21 17:05:04 字數 993 閱讀 4235

功能介紹:

可以實現鎖定**的行和列的功能,效果和excel裡的凍結窗格類似,當然沒有excel那麼強大了,只是類似。

問題:nannzt.com

當乙個table太大而導致在螢幕裡顯示不下的時候,ie會出現滾動條,但是這時候就不好看了,對使用者的操作也不是很方便。於是我們就想給他加乙個限制,在制定的範圍內滾動。

如何實現呢?網上也有不少實現方法了,效果如何就不發表意見了,這裡主要是想說一下我的思路。

思路:nblos.com

1、其實思路很簡單,div有乙個「功能」,給他的style 加上 "clear: none; overflow: auto; width: 100px; height:100px" 後,div就會出現滾動條(當然要在div裡的內容超出div設定的時候)。這樣div裡的table 就可滾動了。但是行和列也以一起跟著動了起來。

2、行和列如何「鎖定」呢?這裡我用了乙個笨招,用三個div來分別放置行和列,以及行列交叉的地方。這樣看起來就像是別鎖定住了。

3、當然行和列並不是不動就可以了,也要根據div的滾動條的滾動作出變化(移動)才可以,這裡就要使用js來幫忙了。

優點:nhyfu.com

1、侵入性小。只需要在。aspx頁面裡加幾個div,引用乙個。js檔案就可以了。其他的檔案裡的**都不用修改。

2、適用範圍比較廣:針對生成的 標籤,而不針對控制項,所以datagrd、gridview、datalist等都可以使用,只要輸出的是 table 形式的html**就可以。

3、可以同時鎖定行和列,行數和列數可以自定義。「鎖定」效果好,不會出現「跳動」的現象。

缺點:1、占用客戶端的資源比較大,行數多的時候會有一點點慢。

2、不支援ff.

js的能力還是不夠強,目前只能這樣了,但這不是最終的結果,還是要更新公升級的。發出來也是想請各路高手指點一二。

說了這麼多了,可能大家還是沒有看明白,不好意思,表達能力比較差。發**看看吧,呵呵。

。aspx檔案裡面需要加的**:

你的控制項控制項

SQL行列轉換的另一種方法

create table tb 姓名 varchar 10 課程 varchar 10 分數 int insert into tb values 張三 語文 74 insert into tb values 張三 數學 83 insert into tb values 張三 物理 93 insert...

發布鎖定表頭的乙個思路

發布鎖定表頭的乙個思路。垂直滾動時表頭不動,水平滾動時表頭可以同步滾動。在這裡呢我只介紹我的思路,因為我覺得思路要比 重要得多。當然我的想法已經實現了。網頁兩個 乙個是放置表的 乙個是放置表頭的。放置表的網頁裡的東東 1.datagrid 就以它為例吧 2.div兩個 3.iframe乙個 4.js...

反射的另外一種方法

t instance default t type type typeof t system.reflection.constructorinfo constructorinfoarray type.getconstructors system.reflection.bindingflags.ins...