今天在寫一個table中tr的click事件,本來想要在某一列上click之後就自動選取前方的checkbox;經過許久的測試後發現事情並不單純,利用以前舊有的attr方法來做竟然發生問題
原來的版本
在這個解法中是利用.attr('checked')來檢查目前checkbox的選取狀態,在第一次run的時候,功能完全正常;但是如果點了第二次他就失靈了,如果利用Chrome developer tool來查看元件,會發現checkbox的後面會忠實地加上checked="checked"這樣的屬性,妙的是checkbox的顯示完全是未選取狀態。
查了jQuery的文件後發現,在jQuery 1.9之後要改用prop,雖然這個在1.6版就有了,但現在看來1.9不用這個會出大問題
http://jquery.com/upgrade-guide/1.9/#attr-versus-prop-
修改後的版本
改用prop來檢測目前的checkbox狀態,並且用prop來變更checkbox狀態。這樣就可以正常呈現想要的功能,不過如果再用Chrome developer tool來看的話,會發現checkbox之後的checked ="checked"根本不會改變...
這真是太詭異了
2014年5月28日
2014年2月14日
PL/SQL迴圈及暫存資料表
莫名其妙被扯入Oracle EBS系統,被迫學習PL/SQL語法;
以下為建立暫存資料表及利用迴圈取得相對應子項目資料再一起寫入暫存的筆記:
//建立暫存資料表
create GLOBAL
TEMPORARY TABLE temp_wales (
DESCRIPTION
VARCHAR2(80 BYTE),
ASSET_NUMBER
VARCHAR2(15 BYTE),
DATE_PLACED_IN_SERVICE DATE,
LIFE_IN_MONTHS
NUMBER(4,0)
)
ON COMMIT PRESERVE
ROWS;
//由A取得ID後再去比對B資料表中的Parent_ID
BEGIN
FOR rec
IN (SELECT ID,DESCRIPTION,ASSET_NUMBER,DATE_PLACED_IN_SERVICE,LIFE_IN_MONTHS
FROM A )
//開始迴圈
LOOP
//先寫入父資料的記錄到暫存裡
INSERT INTO temp_wales( ASSET_NUMBER,DESCRIPTION,DATE_PLACED_IN_SERVICE,
LIFE_IN_MONTHS) values(
rec.ASSET_NUMBER,rec.DESCRIPTION,rec.DATE_PLACED_IN_SERVICE,rec.LIFE_IN_MONTHS);
//再寫入子資料的記錄到暫存裡
INSERT INTO temp_wales( ASSET_NUMBER,DESCRIPTION,DATE_PLACED_IN_SERVICE, LIFE_IN_MONTHS) SELECT ASSET_NUMBER,'改良',rec.DATE_PLACED_IN_SERVICE,rec.LIFE_IN_MONTHS FROM B WHERE Parent_ID= rec.ID;
//結束迴圈
END LOOP;
END;
//撈撈看是否有資料了
select * from temp_wales;
2012年11月30日
好濕!好濕啊~
蚤起,沐浴更衣。排腹中穢物,良久!
出浴門,驚覺八點過廿,疾著衣靴。天雨之,披雨簑,名之雙濕;跨鐵輪疾驅。過半,果蓑衣汁水淋漓,衣衫褲襪竟皆濕透,雙濕之稱果不負其名!
忽鐵輪沉重難以駕馭,下車觀之,鐵輪竟開口而笑!本應肥腴身型竟如路邊瘦丐奄奄一息。
攙鐵輪尋巷道中鐵輪工匠,不果,萬念俱灰!
撚袋中銅幣一枚,卜卦之;曰:今天不宜仕事,大喜!乃歸。
2012年7月26日
jQuery的droppable問題
最近在改同事寫的網頁,其中有個動態產生droppable div的功能,程式如下:
function createDiv(id){
item = '<div id="div_' + id + '">';
$('#div_map').prepend( item).droppable({
drop : function(event, ui) {
$("#div_' + id).hide();
do something ....
}
});
}
畫面上還有幾個其他的droppable div,見鬼的是明明動態產生的div是隱藏的,但是當我把dragable的物件拉過去時,他永遠都會觸發我動態新增的最後一個div事件;假如這個func我跑五次,他就會跑到div_5去;這實在是不合理,已經hidden的東西為什麼可以droppable?
測試了好久,感覺應該是物件剛建立就被賦予這個事件出錯,於是改成:
function createDiv(id){
item = '<div id="div_' + id + '">';
$('# div_map ').prepend( item);
$('#chat_' + id).droppable({
drop : function(event, ui) {
$("#div_' + id).hide();
do something ....
}
});
}
問題解決!
function createDiv(id){
item = '<div id="div_' + id + '">';
$('#div_map').prepend( item).droppable({
drop : function(event, ui) {
$("#div_' + id).hide();
do something ....
}
});
}
畫面上還有幾個其他的droppable div,見鬼的是明明動態產生的div是隱藏的,但是當我把dragable的物件拉過去時,他永遠都會觸發我動態新增的最後一個div事件;假如這個func我跑五次,他就會跑到div_5去;這實在是不合理,已經hidden的東西為什麼可以droppable?
測試了好久,感覺應該是物件剛建立就被賦予這個事件出錯,於是改成:
function createDiv(id){
item = '<div id="div_' + id + '">';
$('# div_map ').prepend( item);
$('#chat_' + id).droppable({
drop : function(event, ui) {
$("#div_' + id).hide();
do something ....
}
});
}
問題解決!
2012年7月16日
Virtualbox - 變更VirtualBox硬碟大小
當VirtualBox硬碟設定為固定大小時,之後如果發現硬碟太小;這時無法用網路上說的方式增加空間,這世界並沒有想像中美好。
必須先將硬碟檔複製一份:
必須先將硬碟檔複製一份:
VBoxManage clonehd old.vdi new.vdi --variant Standard
如果複製完出現uuid重複的話,再下:
VBoxManage internalcommands sethduuid new.vdi
來重新產生uuid
最後再用:
VBoxManage modifyhd new.vdi --resize 改變之後的大小(MB)ex: VBoxManage modifyhd new.vdi --resize 200000
別再相信網路上抄來抄去的方法了....那真的不能用...
2010年6月25日
Facebook 加入粉絲按鈕
Facebook以前的加入粉絲按鈕改成讚了,網路上google一下只會發現都是講這件事的文章,但是根本沒人告訴你如何在自己的頁面上產生這個功能,不然就是用Facebook social plugin中的Like Box或是Fan Box;又大又肥,如果我只想要一個讚的按鈕呢?
請改用like button吧!
iframe src="http://www.facebook.com/plugins/like.php?href=這邊 改成你的粉絲專頁的網址就好了&layout=button_count&show_faces=true& amp;width=200&action=like&colorscheme=light&height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:200px; height:21px;" allowTransparency="true"
讚跟加入粉絲現在是一模一樣的東西了,也難怪網路上一堆人要求粉絲頁的"讚"要改回"加入粉絲團"一直沒人理了,因為這樣做Facebook才省事啊!
請改用like button吧!
iframe src="http://www.facebook.com/plugins/like.php?href=這邊 改成你的粉絲專頁的網址就好了&layout=button_count&show_faces=true& amp;width=200&action=like&colorscheme=light&height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:200px; height:21px;" allowTransparency="true"
讚跟加入粉絲現在是一模一樣的東西了,也難怪網路上一堆人要求粉絲頁的"讚"要改回"加入粉絲團"一直沒人理了,因為這樣做Facebook才省事啊!
Facebook iframe 變更長寬
Facebook的API正在新舊交替中,所以很多該死的功能都會相衝;為了在facebook的iframe模式中可以自訂iframe長寬,以前必須使用
FB.CanvasClient.setCanvasHeight
window.fbAsyncInit = function() {
FB.Canvas.setSize({width:760,height: 1200 });
}
如果頁面中有使用動態產生資料而影響某個DIV的寬高的話,一定要先呼叫這個函數,再去呼叫你要變動DIV的script,不然天才的Internet Explorer會瘋掉! ----一個快被facebook搞死的人的衷心建議
FB.CanvasClient.setCanvasHeight
可是他會和新版的Javascript SDK(connect-js)相衝 ,所以要改用
FB.init({appId: 'app ID', status: true, cookie: true, xfbml: true});window.fbAsyncInit = function() {
FB.Canvas.setSize({width:760,height: 1200 });
}
如果頁面中有使用動態產生資料而影響某個DIV的寬高的話,一定要先呼叫這個函數,再去呼叫你要變動DIV的script,不然天才的Internet Explorer會瘋掉! ----一個快被facebook搞死的人的衷心建議
訂閱:
文章 (Atom)
精選文章
利用Selenium IDE進行UI測試
安裝與執行 Selenium IDE是Firefox的一個plugin,用來做UI的自動測試:下載網址為http://docs.seleniumhq.org/download/ 安裝後,點一下firefox 的工具 -> Selenium IDE ,就會...
-
前陣子有個朋友的機器被駭客入侵了,雖然資料都救回來了,但是系統裡到底有沒有殘留的木馬其實很難講,除了用 chkrootkit 掃掃看有沒有木馬之外, 幫系統做一個指紋系統應該會比掃描木馬的結果來的正確,因為木馬千奇百怪,掃描軟體是不是可以正確掃出來其實還滿難說的,而如果替系統建...
-
PDF 是製作網頁表單上一個很好用的工具,你不用照 著別人在word上面的表單設計圖辛辛苦苦在網頁上一個字一個字的key,利用Acrobat的列印功 能,直接可以將word轉換成PDF,最棒的是,他完全可以和一般網頁的form標籤相容,也就是說你送出的資料和網頁上用Html編輯 ...
-
經過了一晚上的勞累摧殘,第二天早上六點我們就被 morning call 叫起床了,收拾好行李、梳洗之後享用了一頓精緻的早餐後,大夥又陸陸續續的搭上了遊覽車,準備前往今天的行程。 車子又再度行駛在高速公路上,這時候導 遊 先生 也開始跟我們哈拉,聊一聊日本當地的名情跟風俗,其中...