This repository has been archived by the owner on Apr 23, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
tuto.ml
64 lines (55 loc) · 1.77 KB
/
tuto.ml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
open Js ;; (* Nécessaire *)
open Html ;; (* Nécessaire si manipulation Html *)
open JSOO;; (* Nécessaire pour la récupération du contenu du bouton *)
(** Construit un champ de type input HTML pour la saisie de texte
@param name, le nom du champ
@param value la valeur
@return element
*)
let string_input name value =
let input = Js.Node.element "input" in
Js.Node.set_attribute input "type" "text" ;
Js.Node.set_attribute input "value" value ;
Js.Node.set_attribute input "style" value ;
input;;
(** Construit un bouton HTML
@param name, nom du bouton
@param callback, fonction à appeler
*)
let button name callback =
let input = Js.Node.element "input" in
Js.Node.set_attribute input "type" "submit" ;
Js.Node.set_attribute input "value" name ;
Js.Node.register_event input "onclick" callback ();
input;;
(** Construit un element div HTML
@param id, l'id du DIV
*)
let div id =
let div = Js.Node.element "div" in
Js.Node.set_attribute div "id" id ;
div;;
(** Affiche le texte dans le div *)
let print () =
let s = (get_element_by_id "text") >>> get "value" >>> as_string in
let stringdiv = (get_element_by_id "string") in
Node.empty stringdiv;
Node.append stringdiv (Node.text s)
;;
(** Fonction principale *)
let () =
(* Construit le div *)
let stringdiv = Html.div ~style:"id: string; padding: 5px; text-align: center; font-weight: bold; color: red;" [] in
Js.Node.set_attribute stringdiv "id" "string" ;
(* Construit le bouton *)
let inputstring = string_input "Texte" "" in
Js.Node.set_attribute inputstring "id" "text" ;
(* Ajoute les éléments à la page *)
let body = (get_element_by_id "body") in
Node.append body (inputstring);
Node.append body (button "Afficher"
(fun () ->
print ();
));
Node.append body (stringdiv);
;;