Module Eliom_content_core.Html5.Custom_data


module Custom_data: sig .. end
Type-safe custom data for HTML5. See the .

type 'a t 
Custom data with values of type 'a.
val create : name:string ->
?default:'a ->
to_string:('a -> string) ->
of_string:(string -> 'a) -> unit -> 'a t
Create a custom data field by providing string conversion functions. If the default is provided, calls to return that instead of throwing an exception Not_found.
val create_json : name:string ->
?default:'a ->
'a Deriving_Json.t -> 'a t
Create a custom data from a Json-deriving type.
val attrib : 'a t ->
'a -> [> `User_data ] Eliom_content_core.Html5.attrib
attrib my_data value creates a HTML5 attribute for the custom-data type my_data with value value for injecting it into an a HTML5 tree ().
val get_dom : Dom_html.element Js.t -> 'a t -> 'a
get_dom element custom_data gets the custom_data from a JavaScript element ().
Raises Not_found if the element does not contain the respective custom data attribute and the custom_data was created without default.
Returns The value encoded in the respective custom data attribute of element, or the default value, if any.
val set_dom : Dom_html.element Js.t ->
'a t -> 'a -> unit
set_dom element custom_data value sets the custom data attribute for custom_data of an JavaScript element () to value.