今天我们要来分享一款很实用的jquery插件,它是一个基于jquery多级联动的省市地区select下拉框,并且值得一提的是,这款联动下拉框是经过自定义美化过的,外观比浏览器自带的要漂亮许多。另外,这个select下拉框也可以绑定下拉事件,并获取当前选中项的值。
! M$ x; ~% I2 ~html代码: T- h# K" r5 k7 k" T
代码如下:
" o, ~6 W2 B2 u4 y, ? K1 l, [1 z<div class=wrap>
& @! \# ^' E# d<div class=nice-select name=nice-select>
$ y: A) b) {8 V<input type=text value===选择省份== readonly>* Q. M- c t# K1 u; d% d) |
<ul>
% b) U% l2 [3 X, H<li data-value=1>湖北省</li>
9 A& N6 }, b. _' `$ E+ }8 d<li data-value=2>广东省</li>
1 z; g* L$ f7 j0 j* `# R7 g% ^, D<li data-value=3>湖南省</li>, b7 m7 w' v' d
<li data-value=4>四川省</li>
8 U( M* @0 R8 q3 G% a( C</ul>
* A7 N! c9 `$ E0 p7 [</div>) e: l, l9 I9 l% v8 W
<div class=h20>
& L( W. Q9 p; C) J: b/ V& `- E4 o</div>% Q& g$ n. ]0 A& T. ?- U
<div class=nice-select name=nice-select>
, V$ ~* w5 x! z1 [" T<input type=text value===选择城市== readonly>
; }& o' p1 S5 Q( o: S: E<ul>
- k3 x, \3 s+ E: v4 n4 ?<li data-value=1>武汉市</li>
* V% D* ~5 {9 u- _<li data-value=2>深圳市</li>$ h+ i- _; G: Y
<li data-value=3>长沙市</li>
/ e3 S! G* M( g$ C6 l5 F<li data-value=4>成都市</li>
1 r) @% `. T( B% Q4 p</ul>
5 i/ K4 ?: I r0 @( D3 n9 g</div>* Y. c5 n: ?$ b- A% I
<div class=h20>6 h# l. E" j1 ]/ q' D
</div>4 N$ a( `% R2 ~# G4 P+ p2 K1 o
<div class=nice-select name=nice-select>
( O9 z: f, d; o+ N<input type=text value===选择区县== readonly>0 m( f' X6 ^( v; `! w
<ul>
/ J/ U7 t. } f<li data-value=1>蔡甸区</li># F( T5 }! ~$ D* I9 ~' E
<li data-value=2>南山区</li>& M* p- W# W: Z9 [6 Z& H5 H. P
<li data-value=3>雨花区</li>
4 N3 T4 o3 a! V<li data-value=4>武侯区</li>
, q0 R) ?8 E& w+ l3 T3 H0 H& ?* l</ul>
+ r, B) h: I+ W0 x: _2 f# ]</div>
' L: B1 g" w+ |) r' p0 @- W5 \1 Y/ T0 e</div>
# U, f2 j" K6 \* I* o' V* ~2 `<script type=text/javascript src=js/jquery.js></script>
- v: K1 s j6 s; g, }1 c<script>
1 k, Q. G: v8 K9 a, p5 K$('[name=nice-select]').click(function (e) {
1 d2 S- J! o/ k+ Y6 H. f/ S$('[name=nice-select]').find('ul').hide();
1 w4 D% e$ z& m, t; f. A$(this).find('ul').show();
+ o7 D8 e) s% O- s. O6 H$ ue.stoppropagation();+ {& V3 u. l8 O% B$ s+ \7 M
});3 U& B! H5 ^" q; R) M
$('[name=nice-select] li').hover(function (e) {4 z& P+ \! L8 s2 j# l
$(this).toggleclass('on');
' v1 W7 D3 P2 b! O8 Q0 K; H' Ke.stoppropagation();
2 j) ^, M4 a( @7 A0 X/ c( t});
9 v+ U1 ~& L( \2 k% s! U) {$('[name=nice-select] li').click(function (e) {1 a5 }/ L) Y1 z2 M: H0 y# Q
var val = $(this).text();
1 [. h3 i; u! F! } ?, N2 u" @var dataval = $(this).attr(data-value);
* _7 q6 p8 e3 N K! M$(this).parents('[name=nice-select]').find('input').val(val);
7 O& g c! t3 q! E$('[name=nice-select] ul').hide();
6 e. ^2 o, Y! l# @) v" [e.stoppropagation();
9 @+ N& m b0 T% l. n) \alert(中文值是: + val);6 ?: M& \# w. d1 d
alert(数字值是: + dataval);6 U+ K1 y n: @2 d% w) m+ y
//alert($(this).parents('[name=nice-select]').find('input').val());
7 S b* T# Z! _& b5 W( P6 y' ?});
8 u* D1 Y2 w; ?4 _$(document).click(function () {5 [, |$ s5 n% W, {0 X0 C
$('[name=nice-select] ul').hide();
M& g. }# D8 `# U1 w3 [, Y});
3 u' {0 q2 h* [! S: b</script>$ \5 Q% F5 |$ i1 b- a, t
css代码:
& \' Z# F- f6 C1 V代码如下:
9 z$ e. t. e6 }- _# F6 K3 Obody, v# ^5 f+ }2 S' t1 C V( ?" s: G2 |
{
) @' D4 H. {/ ?; C' i( N+ scolor: #555;# G6 K7 ]0 e/ U. l- \9 V, u9 v
font-size: 14px;4 @& J6 C/ `( j$ e
font-family: 微软雅黑 , microsoft yahei; S2 I1 X v) {2 X. u' x! Z
background-color: #eee;
o& a, @) I4 f6 K}/ S5 k( O' \- A1 f( R( y
a
* h7 c% u7 d& k$ ^+ v{
1 ^8 S& O: P* X4 I, Ncolor: #555;
$ ]. L4 ~2 D! W w4 `" @" t}
9 I2 G4 v" t2 ^/ v: Sa:hover
% H$ o4 l5 Z/ V/ ^( B{
6 C! a( S* L' k- |! `# [: v! [color: #f00;: ^, N* l8 T7 G+ y3 ?3 U
}9 Z' }* e: D( e# \$ I
input
2 @0 l m7 H7 T$ J( O) b/ U{
! m+ }6 {# @3 s; A. J( S1 D/ {/ Q0 dfont-size: 14px;6 h. L: |1 R7 I; N; M z5 U
font-family: 微软雅黑 , microsoft yahei;
7 B0 R% z( y9 b% y' }}$ p! i" D0 ^( e2 C* |5 X% E
.wrap
9 R7 S+ T! V+ O! p" i# {{
' M' T6 i. b7 n$ x6 m6 Awidth: 500px;1 C n& ~) `) t2 c: z
margin: 100px auto;
: ]" z# {% H5 ~, Z- e( I3 {, j}
0 P( h! l1 `( T* ^) L) O$ s' B.h20& ?: ^% g6 c1 W; D
{
9 D# i' B. @4 _$ uheight: 20px;/ @1 \& f8 r! E' m* f, w
overflow: hidden;
$ P6 I! i# | ^3 @) h) D8 fclear: both; H1 T/ p" B; x5 H
}! n: u' v. V$ ~& `/ {$ o+ h
.nice-select2 D. p7 B5 k5 g0 Y! r! W& s
{
9 { q1 w" `- {width: 245px;4 U, F2 i( Z. Y. k
padding: 0 10px;
; R% P( E, `! ?! }# iheight: 38px;
0 i) p' c. i1 W/ [: B: u! y- Tborder: 1px solid #999;
, Q+ t4 J) C* h$ f% J; N! m/ Xposition: relative;
* }& T' _4 S/ A9 \% B2 d# T2 Mbox-shadow: 0 0 5px #999;/ H" F% X4 ?( y. O, d% ]6 i4 f( g
background: #fff url(images/a2.jpg) no-repeat right center;
, I4 ~# s! y9 Y1 \& V4 mcursor: pointer;' _: i- H% M# ^& y
}
: I4 l; H9 `7 B t c" {" }( P1 F" J.nice-select input
* Y" W; J$ |4 g2 j& V{
; M/ Z, E0 D6 V% ^" ydisplay: block;
$ o( G0 C. b2 u1 {width: 100%;
# @4 a9 c3 O" L3 L8 Oheight: 38px;
0 x6 b9 i* @) x ^line-height: 38px \9;/ _9 p1 D: z: ]( x- p* T, P3 H6 K
border: 0;: I6 f" H" |, b: A5 Q+ q- G
outline: 0;
; J3 _2 K, u' t. }" xbackground: none;
$ M" H, i( l+ h7 @4 ycursor: pointer;
7 F( Q4 ~3 P$ y" T0 V}6 D) z1 l: W ^0 z6 |4 r
.nice-select ul- U. _+ V2 Q; Q
{& M; J% S+ E0 l
width: 100%;
( a* l/ o) w6 x4 e; Xdisplay: none;
9 E6 c3 r. j' Eposition: absolute;
! A$ _& ]$ y( p8 lleft: -1px;2 X0 x8 @ t2 U& T# O. `0 G6 j
top: 38px;
9 n/ \: Z; H" e$ Xoverflow: hidden;
& f7 t' S7 F' A; N9 o/ k/ i9 [ }9 r5 k4 Ebackground-color: #fff;. m" I+ F. n$ l5 V$ {5 x" H! @, D
max-height: 150px;# z {- ?. B1 n0 J/ u
overflow-y: auto;" t+ i- r6 o, u# G% e- a
border: 1px solid #999;' Z9 f. f7 q4 W
border-top: 0;
9 d8 R6 u9 {' a6 F' ubox-shadow: 0 3px 5px #999;/ p% L& T* |, z4 F: b
z-index: 9999;+ ~* O6 N% N' W1 v3 E3 f
}/ k+ s, A7 {% ^: t/ ?
.nice-select ul li& [* g c% p2 q; V
{/ F0 D5 t; o( i: D' K2 `
height: 30px;
" |- ?( T) j6 {6 l5 xline-height: 30px;: O; o0 F# B3 ?
overflow: hidden;
/ t6 c/ t" x( L! Npadding: 0 10px;! W3 d: \$ U2 C0 a: u! @
cursor: pointer;2 f9 Z, J$ s/ J) T$ @7 I f, Y- ^; B
}7 g' E" o5 b( @/ r- ]4 i. X g
.nice-select ul li.on
- }) h; A0 f6 `" a( |6 e{
. K2 R _1 I1 ~7 B3 k ?# r7 xbackground-color: #e0e0e0;' {( u6 S$ P8 u; A$ [3 V$ d1 k
}
f- j- `7 u0 l. `代码很简洁,我这里就不多做解释了,小伙伴们自己预览下就知道效果是多麽的简洁大方了,非常实用。! P; g/ N; P# W7 {8 v
: q4 V! J, p" G* T9 k; {
更多网页制作信息请查看: 网页制作 |
|