JS 判斷
上一篇 / 下一篇 2008-09-19 14:36:39 / 个人分类:項目筆記
Ruby Communityx A*Wfz1P
/********************************************************
2yC\'Q-oMrtWt0 *【名 称】onFocusChangeBGColor
Y1f;v{"fOp0 *【概 要】入力フィールドの onFocus イベントで呼ぶRuby CommunityHq3c"M!yI4ha
* 現在のカーソル位置の色を変更するRuby Community5e!]
K$|@+b|(d(q
*【引 数】 なし
*uEC%H~*{1{u
}g"m0 *【戻り値】 なしRuby CommunityA2H|6Y'I;Y
*********************************************************/Ruby CommunityJp0@"i k3L`V
function onFocusChangeBGColor(e)
byb"c?|/I(y3J0{
d|0F.?O,I9b0 var elem = e.target || window.event.srcElement;
,x:W9P.r&L#e~u.t0 if(elem.type == "text" ||
4{8Dekzyq+X0 elem.type == "textarea" ||
eF@Xu#Ub0 elem.type == "checkbox" ||
*OJN\4^LPV/O*IU0 elem.type == "radio" ||Ruby Communityf
Mg[)C-ZZ
elem.type == "select-one" ||
da-c%}v0fNb0 elem.type == "password"){
BJPFg~n@;a8`0 elem.style.backgroundColor = "#66CCFF"; //水色
}&_P8YK4~&V?|0 if(elem.type != "select-one"){
po`4]^-skP0 elem.select();
/B[u.zD-| a S;^yQ0 }Ruby Community.E#Mj[9vy&F/_
}Ruby CommunityS6cq_&It$o
}
/********************************************************Ruby Community7a6r
tM3S1f;I\?
*【名 称】onBlurChangeBGColor
{KXOW0 *【概 要】入力フィールドの onBlur イベントで呼ぶRuby Communitymq1z?BX$`
x8` V
* 現在のカーソル位置の色を元に戻す
'bS$_0u4K5Uc0 *【引 数】 なしRuby Communityyb@Q*Z}
*【戻り値】 なし
dld tBg0 *********************************************************/
S&W:bz@.sc0|0function onBlurChangeBGColor(e)Ruby CommunityN0{'JHg0s7R+M&\
{Ruby Community N;\"@o
xC6R
var elem = e.target || window.event.srcElement;Ruby CommunityiXu~3Hyf
elem.style.backgroundColor = "";Ruby Community
dbl&darQb
}Ruby CommunityL?0FB1M(KD
/********************************************************
s-]'T.m'o-[n0 *【名 称】OpenWindowRuby CommunityY
?0wQ/K
*【概 要】新しいウィンドウを開くRuby Community F7P4CUGk
*【引 数】p_str アドレス名
6J]3|"U?xH5v0 * p_title ウィンドウタイトル
7m%H-LO)PL
c$\%E0 * p_width ウィンドウ横幅
ad-V8I8K XI1a0 * p_height ウィンドウ縦幅
'uf(^'qMp0 * p_x 画面左からの位置
i8mwP}0Kn"T0 * p_y 画面上からの位置Ruby Community*w9|3My\pO@
* p_scroll スクロールバー表示/非表示(yes/no)Ruby Community3Fe/I1b9N1m?U
*【戻り値】なしRuby Community#wd,D
n`(P)NV9q/B
********************************************************/Ruby Community'W$X+I;}/rm
function openWindow(p_str, p_title, p_width, p_height, p_x, p_y, p_scroll){Ruby Community0] ?n y6m;Su"yx~
if(win!=null){
n@~/W+_1~w0 win.close();
t"Ve[m:~0 }Ruby Community2H;HF8^7c]M
win = open(p_str,p_title,"width="+p_width+",height="+p_height+",left="+p_x+",top="+p_y+",resizable=no,scrollbars="+p_scroll);
;r Kv%nH'|0 if(win!=null){Ruby Community,`
m^8g8{#v*C/]L
win.focus();
p0sGG-VsO%b0 }Ruby CommunityMK~K~A
return win;Ruby Community]jyR0b
}C |
}
/********************************************************
+mD\p(d.x\!V.bL0 *【名 称】chkNullRuby Community,v9@8x k!m,h9D%U
*【概 要】入力された値が空白かチェックするRuby Community$MCZ;Og)U'ia4s
*【引 数】p_itemValue チェック対象の値
&s(SX7]5}0 *【戻り値】正常:TRUE 異常:FALSERuby Community-e/`\T cg
*********************************************************/Ruby Community YEf'R5O;Y~#w|"W
function chkNull(p_itemValue)
R q;rl8ZSX0{Ruby Community,r`"R+bk*@ x
h:{
if (trim(p_itemValue) == "") {
(n:tYI*g"W2jHY"W\0 return false;
;Fh+L8m)d7wn$U0 }
c(c$HA'me!c0 return true;Ruby Community ss8s W\.W
}
/********************************************************Ruby Community'P$Un[qSh
*【名 称】trim
$S
d6uDp\0 *【概 要】前後スペースを削除する
HKh\!LL3v9e0 *【引 数】p_itemValue チェック対象の値Ruby Community]3TF{9bgj
*【戻り値】正常:前後スペース削除後の文字列Ruby Community3X*}^4|/T+i6Jf.@p
*********************************************************/Ruby Communityr6a2hdL|? {
function trim(p_itemValue)
'i6nM5G]0{
h s#p2d ?4Y7l6J0 var str = p_itemValue;
l!N)Yw u ?4B0 str = str.replace(/^[ ]+/, "");
YRZ0F9`}S{$@A0 str = str.replace(/[ ]+$/, "");Ruby Community g j2_.pR)AR
return str;Ruby CommunityAFn)Y(|+X f
}
/********************************************************Ruby Communitym2{f(?b0u:D.w
*【名 称】chkLengthSmallerthanRuby Community#o%i(u,xHxI
*【概 要】入力された値が指定されたバイト数以下かをチェックするRuby Community&@&b+@+n\w@
*【引 数】p_itemValue チェック対象の値
d
]#\[$^u$`I sP0 * p_size 桁数
W9REX+Ct$S0w^0 *【戻り値】正常:TRUE 異常:FALSERuby Community iA)Xy7e
P(XI
*********************************************************/
@#tg-p"b~
V0W:A0function chkLengthSmallerthan(p_itemValue, p_size)Ruby Communityd7p7U1B|
{Ruby Community.ZX:}pa[ga
if (p_itemValue == "") {Ruby Community oc/UK/qQ%J Z@)I
return true;
? H,m"L{}4M0 }Ruby Community7l'Dg+Sbe"A2f*Z7~
if (getByte(p_itemValue) < p_size) {Ruby Communityx%Dq*L-xH%e0~,U
return false;
"iQ8b'Xm0I-EB)M0 }
N/i.R*Kt6Y ^0 return true;Ruby Community8J fN C%bO w
u|\
}
/********************************************************
/DIrr)nw0 *【名 称】chkLengthGreaterThan
Fb6KbOu0 *【概 要】入力された値が指定されたバイト数以上かをチェックする
2yl4JhxJ&wg0 *【引 数】p_itemValue チェック対象の値
|T-k_zoC?0 * p_size 桁数Ruby Community;{V H,_PF-\,eNQ
*【戻り値】正常:TRUE 異常:FALSE
g7k m#|N)C
X[0 *********************************************************/
;oY-p:KzU~4~o0function chkLengthGreaterThan(p_itemValue, p_size)Ruby CommunityN#Ak m^z
LH
{Ruby Community!D3~2Db/H
if (p_itemValue == "") {Ruby CommunityB;R:o`:TuZ)N
return true;
Z!rS$f6c0h0 }
,T1M;Ti)Fj{'si0 if (getByte(p_itemValue) > p_size) {Ruby Community7j:G*\ |g#?j)cC!o
return false;
-B-oHLa AN~0 }Ruby Community"d"`/|0o\7p+CM
return true;Ruby CommunityX)v}"U*?
}
/********************************************************
4i"R\2T+dDP0 *【名 称】chkLengthRange
kr]w)SS#]5}
eOA0 *【概 要】入力された値が指定されたバイト数範囲かをチェックするRuby Community8F/x(V
|!RI D
*【引 数】p_itemValue チェック対象の値
X#mB9R?o.l0 * p_sizeFrom 桁数FROM
2yuLR/X L YD0 * p_sizeTo 桁数TO
7zK2^ a9}*Tv2@0 *【戻り値】正常:TRUE 異常:FALSERuby Community9[pb/xZ;\p~\5p
*********************************************************/
*T8eC%d?0function chkLengthRange(p_itemValue, p_sizeFrom, p_sizeTo)Ruby Community%H/r1W'N*RP e
{
4a
h3d
j u
M0 if (p_itemValue == "") {
tB5Kh8}O0 return true;
4O,\4j EBI6lL3RVN0 }Ruby CommunityUL|#BT}E,go
if (getByte(p_itemValue) < p_sizeFrom || getByte(p_itemValue) > p_sizeTo) {
N)T:ePh/B[w5l0 return false;Ruby Community5dUP2v6fHO
}Ruby Community:P(S.^?cMK`P
return true;Ruby Community0u~{$q v
}
/********************************************************
]@~T_i0 *【名 称】chkNumRuby Community$zk)S} V
*【概 要】入力された値が数値かチェックする
&GE_*i'BL0 * (0~9で構成されているか)
Kg;PU#b~&s~g0 *【引 数】p_itemValue チェック対象の値
@iU yj{f0 *【戻り値】正常:TRUE 異常:FALSE
Z^%^!])S6Vafz~0 *********************************************************/Ruby Community,P%F"_%g$B7P
function chk_Num(p_itemValue) Ruby Community7mc/Uv5A@@
{Ruby CommunitydwdocE6~
// 入力を認める文字を定義する(ここでは数字)
x4YPn
PnQChK@z0 var kStr = "0123456789";
;L
xXG/u3S
fmb0 if (p_itemValue == "") {Ruby Community9V:o$fg k X?
return true;Ruby Community+v
Q!j6t7vB
}
6KRg1mBgt@0 Ruby Community5Z^$X+j:k~
for (var i = 0; i < p_itemValue.length; i++) {
+S/hW3?Mq0 if(okStr.indexOf(p_itemValue.charAt(i)) == -1) { Ruby Community9b(^!E*Hf-Rc/U
return false;
Y'n/M
zg6of*QHA0 }
4Hks
n4H0 }
TbK"N
n
T0 return true;
6w)eK s3X*@0}
/********************************************************Ruby Community0s5~L0r|dc)U
*【名 称】chkNumberRuby Community8u0o3t
A)?,Oi
*【概 要】入力された値が数値かチェックするRuby Community
H([}jv
* (0~9と.)で構成されているか)
+Eg3m)i$q&p0 *【引 数】p_itemValue チェック対象の値
0|C}|ZEd6M k%Pll0 *【戻り値】正常:TRUE 異常:FALSE
r2|lW*}KD[E1Qh0 *********************************************************/
x*~,Db:^UhmU0function chkNumber(p_itemValue) Ruby CommunityYplz_Y
{
,~X&C;q
CD0 // 入力を認める文字を定義する(ここでは数字)Ruby Community:T$h7eynvOUJ
var kStr = "0123456789.";
R wK+A:K
`'vUL0 var value;Ruby Community!SnuEjBam
if (p_itemValue == "") {Ruby CommunityZs(td
?9SU
return true;
"ZQhP&BBM1d]bj7X0 }
5fOm;Z9T+n7hS0 Ruby Communityk cKMw
T$tjW
value = p_itemValue.split(".");Ruby Community#N7Q s1e2j:N9B
if (value.length > 2) {
A4z|JPj4f0 return false; Ruby Community!JSiy6IUk
}Ruby Community]#gw'u
a%[
Ruby Community
}sBX.oZSc-`
if (p_itemValue.substring(0,1) == '.' || p_itemValue.substring(p_itemValue.length, p_itemValue.length - 1) == '.') {
"z$RP4b o(w0 return false;
gi1kL5Gs0 }
for (var i = 0; i < p_itemValue.length; i++) {Ruby Community#M2~uJ;XEv
if (okStr.indexOf(p_itemValue.charAt(i)) == -1) {Ruby Community%wQJr'}K$Sc
return false;Ruby CommunityC9Z)x4`SvD%qG,\
}Ruby CommunityP[XPu#p*m
}Ruby Communityo
DAFL9oi~e x)v
return true;Ruby Community3yq,r7r.O3ge.S
}
/********************************************************
6_+GQ G \,n$[`2P0 *【名 称】getByteRuby Community#@2Z X.e-~^
*【概 要】文字列のバイト数を取得する
-KM&S"n&e'Q,A0 * 全角を2バイト、半角を1バイトとしてカウントします
o4_`e8o*e0 *【引 数】p_itemValue チェック対象の値Ruby CommunityY^VuR
*【戻り値】取得したバイト数Ruby CommunityO{,vC5C
*********************************************************/Ruby Communityc}!x~3tQc.Ei1E
function getByte(p_itemValue)Ruby CommunityH
I8n%\,ga-E1L
{Ruby Community]-g3U-HF:fgGKA9eY
var count = 0;Ruby Community'kE!gvl
for (var i = 0; i < p_itemValue.length; ++i) {Ruby Community|3M.~b? OJ'T
var sub = p_itemValue.substring(i, i + 1);
f"x!^3}$G3IB5O0 // 全角の場合2バイト追加
"Fyp9ov0[z0 if (chkIsZenkaku(sub)) {Ruby Community;RPH?Gge mB
count += 2;Ruby Community{l\A0`f |
} else {
e!['Yqt7hND0 count += 1;
L'p-hDmmav0 }Ruby Community(F]x9eekAw
}Ruby Communityt;]q?xY
r6wu8w4E
return count;
)m^e7p
[u(K0}
/********************************************************Ruby Community$`Vz.Kf
*【名 称】chkIsZenkakuRuby Community+hK&b#mwGr
*【概 要】全角であるかをチェックしますRuby CommunityJ{/CJ1Nb;P6C {
w
*【引 数】p_itemValue チェック対象の値
0^:ARm%XO0 *【戻り値】ture : 全角 flase : 全角以外Ruby Communitybrc'_Ts0vje:A
*********************************************************/
8X(|\E0bk6H0function chkIsZenkaku(p_itemValue)Ruby Community]Q{f|Y?^
{
0l5j'yK}ivNZ/B4n0 for (var i = 0; i < p_itemValue.length; ++i) {Ruby Community,bLV?e8u s
var c = p_itemValue.charCodeAt(i);Ruby Community8MZA+z/WDs7H$c
// 半角カタカナは不許可Ruby Community(ymZ
`jj
if (c < 256 || (c >= 0xff61 && c <= 0xff9f)) {
!sh-W.R+J/AAK c0 return false;
I9K#P1FFDT6X|0 }
"}X6h
xu0 }Ruby Communityed#u_*Xs#Hsj@2a
return true;
0N ~0V5c[y^I0}
/********************************************************
5@`Jf$o"p0 *【名 称】chkDate
{
E.G0S @$}4}X0 *【概 要】入力された値YYYY/MM/DD形式の日付が存在するRuby Community&U6|jRd7_!u
* かチェックする
{3] _5qfH0 *【引 数】p_itemValue チェック対象の値Ruby Community t|j
tJ%E?6B}|+Di
*【戻り値】正常:TRUE 異常:FALSE
jZ qcs |`@]j0 *********************************************************/
.g0|I%Sy*VP}C0function chkDate(p_itemValue)Ruby CommunitylW0{
k%z1aR d
{Ruby Community'iCq8D y/qA`$bDE
var r = p_itemValue.match(/^(\d{4})(\/)(\d{1,2})\2(\d{1,2})$/);
-g0v ^7ZX:DFs0 if(p_itemValue.length != 10){Ruby Community3j(j(FZ
A\]|5j
return false;Ruby Community
p){B(D*qh
}
\\:d}rk)N1J`0 if (r == null) {Ruby Community5F5tzjmot9k
return false;