標籤

JavaScript (3) jQuery (2) MSSQL (1)

2011-06-02

function return 多個值

-Javascript-

(function return multiple values)



function xxx(){
   var one = 1;
   return {  'myone' : one , 'b': 2};

}

呼叫:

var  obj = xxx();

alert ( obj.myone );  //  return 1

2011-05-18

Where同時in 2欄位

-MS-SQL-

同時要二個條件成立的 Where


Oracle: --------------------------------------------------
SELECT * FROM T1 WHERE (C1,C2) IN (SELECT C1,C2 FROM T2)


Sql 2005: --------------------------------------------------

select * from
(
select Ta, Tb from T1
) X
where not exists (
SELECT C1,C2 FROM T2
Where C1 = Ta and C2 = Tb
)



看出來沒, 很奇妙吧!

2011-05-06

NameSpace 防止變數名稱衝突

為自己的 javascript 取命名空間, 防止 變數名稱衝突

var ppNS = ppNS || {}; //my global define name space


(function(p) {  //p 是這群命名函數的主要變數
p.theme_dir = "/myDir"; //公有變數 = public
p.loadCSS = function (_file){ //公有 function
retrun {Say: 'hello', fileName: _file}; /回傳一個物件, 物件裡有二個屬性
};
var cc=1;  //私有變數, 外面叫用不到 = private
function privateCC(){ //私有function 外面叫不到
cc += 1;
}
privateCC(); //叫用, private
})(ppNS);  //ppNS 是指, 定義完後收編在 ppNS 的 NameSpace 裡


呼叫:
<input ('file.css')="" onclick="pNS.loadCSS" type="button" />

XML 操作

-jQuery-

一直以來都以 JSON 在傳資料, 有時遇 xml 也先轉 JSON 再 ajax 取得.

但後知後覺發現, jQuery 操作 xml 是如此方便, 可以直接標下來, 以下註記:

[ x.xml ]
< Area ID="AAA" >
      < Block Title="BBB" > .......
       
   


[jQuery]

$.ajax({
            url: "x.xml",
            type: "GET",
            cache: false,
            dataType: "xml",
            error: function() {
                alert('error');
            },
            success: function(xml) {
                 var $B = $(xml).find("Area:eq(0)>Block:eq(0)");
                 var title = $(B).attr("Title");   //得到 BBB

            }
});

2011-05-05

undefined 判斷(typeof 與===)

-JavaScript-

var a;

在後面要判斷它是否有用到, 可以使用 typeof 這個關鍵字, 例:


if(typeof(a) !== 'undefined') {
   alert('有值');
}else{
  alert('沒定義');
}

!==  和 === 是用來比對物件本體是不是相同,
與 != 和 == 是值的比對不同.
typeof 是用來判斷型別.

檢查元素是否可見 (hidden / visible)

-jQuery-

把元素變可見或隱藏是:

$(selector).show()  /  $(selector).hide()  

判別元素是否為可見或隱藏是:

 $(selector).is(':visible') /   $(selector).is(':hidden')   , 傳回 true / false

有時會透豆, 只好使用傳統的判斷:

$(selector).css("display") != "none"