Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
vidjil
vidjil
Commits
42c1b632
Commit
42c1b632
authored
Aug 04, 2014
by
Marc Duez
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
database.js : simple suggest list function for html form input
parent
acedfb6a
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
68 additions
and
0 deletions
+68
-0
browser/css/vidjil.less
browser/css/vidjil.less
+15
-0
browser/js/database.js
browser/js/database.js
+53
-0
No files found.
browser/css/vidjil.less
View file @
42c1b632
...
...
@@ -1183,3 +1183,18 @@ select>option:hover {
opacity: 0.5;
}
.suggest_box {
height: 0px;
display: none;
position: relative;
}
.suggest_list {
border: solid;
border-width: 1px;
min-height: 20px;
background: @background;
border-color: @border;
max-height: 100px;
display: block;
}
\ No newline at end of file
browser/js/database.js
View file @
42c1b632
...
...
@@ -444,3 +444,56 @@ Database.prototype = {
}
}
/*crée une liste de suggestion dynamique autour d'un input text*/
function
suggest_box
(
id
,
list
)
{
var
input_box
=
document
.
getElementById
(
id
)
//positionnement d'une boite vide pour contenir les suggestions
var
suggest_box
=
document
.
createElement
(
'
div
'
)
suggest_box
.
className
=
"
suggest_box
"
suggest_box
.
style
.
width
=
input_box
.
style
.
width
var
suggest_list
=
document
.
createElement
(
'
div
'
)
suggest_list
.
className
=
"
suggest_list
"
suggest_box
.
appendChild
(
suggest_list
)
//ajout de la suggest_box apres l'input correspondant
if
(
input_box
.
nextSibling
)
{
input_box
.
parentNode
.
insertBefore
(
suggest_box
,
input_box
.
nextSibling
);
}
else
{
input_box
.
parentNode
.
appendChild
(
suggest_box
)
}
//réactualise la liste a chaque changement d'input
input_box
.
onkeyup
=
function
(){
suggest_box
.
style
.
display
=
"
block
"
suggest_list
.
innerHTML
=
""
var
value
=
this
.
value
.
toUpperCase
();
var
count
=
0
for
(
var
i
=
0
;
i
<
list
.
length
;
i
++
){
if
(
list
[
i
].
toUpperCase
().
indexOf
(
value
)
!=
-
1
){
var
suggestion
=
document
.
createElement
(
"
div
"
)
suggestion
.
appendChild
(
document
.
createTextNode
(
list
[
i
]))
suggestion
.
onclick
=
function
(){
input_box
.
value
=
this
.
innerHTML
console
.
log
(
"
plup
"
)
setTimeout
(
function
(){
suggest_box
.
style
.
display
=
"
none
"
},
200
)
}
suggest_list
.
appendChild
(
suggestion
)
count
++
}
}
if
(
count
==
0
){
var
suggestion
=
document
.
createElement
(
"
div
"
)
suggestion
.
appendChild
(
document
.
createTextNode
(
"
no suggestions ...
"
))
suggest_list
.
appendChild
(
suggestion
)
}
};
//masque la liste
input_box
.
onblur
=
function
(){
setTimeout
(
function
(){
suggest_box
.
style
.
display
=
"
none
"
},
200
)
};
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment