BullGuard Antivirus Sale - 60% Off with openElement !
Accueil Forum Accueil Forum >

openElement

> Sites créés avec openElement
  Nouveaux messages Nouveaux messages Fil RSS  - Saisie texte / clavier virtuel  [Résolu]
  FAQ FAQ  Rechercher dans le Forum   Inscription Inscription  Connexion Connexion

Saisie texte / clavier virtuel [Résolu]

 Répondre Répondre Page  123>
Auteur
Message
j74 allez vers le bas
Senior Member
Senior Member


Depuis le: 25 Juil 2010
Status: Inactif
Points: 110
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer j74 Citer  RépondreRéponse Lien Direct à ce Post Sujet: Saisie texte / clavier virtuel [Résolu]
    Envoyé : 06 Juin 2023 à 13:09
Bonjour,

Toujours dans les finitions du site que je développe, j'aimerais savoir s'il serait possible de désactiver la saisie de texte (sur PC) et l'apparition du clavier virtuel (sur Androïd, etc..) d'un champ de formulaire, en l’occurrence un champ de date qui sera gérer par l'apparition d'un calendrier (DatePickr.js).

Donc, empêcher la saisie libre, tout en autorisant le clic sur la zone (à la souris ou au doigt) pour déclencher l'apparition du DatePicker qui renseignera le champ de la date.
(L'option "lecture seule" ne permettant pas le clic...)

Merci !

--> https://www.domaine-des-hugaux.com/TEST/reservation.htm

_______________________________________________________________

<link rel="stylesheet" type="text/css" href="Files/Other/jquery.datepickr.css" />
<script type="text/javascript" src="Files/Other/jquery.datepickr.min.js"></script>

<script type="text/javascript">
$(function() {
    $('.date :input').prop('id','Id_DatePickrElement'); // On attribut un id à l'inputbox
            new datepickr('Id_DatePickrElement', {
                dateFormat: 'jS F Y', /* Double anti-slash pour mettre du texte */
                weekdays: ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi'],
                months: ['janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'],
                suffix: { 1: 'er' },
                defaultSuffix: '' /* suffix utilisé si aucun suffix 'th' */
            });
// Pour que le calendrier soit au premier plan
$('.calendar').css('z-index','100000');
 });
</script>
________________________________________________________________


Edité par Hobby001 - 19 Juil 2023 à 15:18
Haut de la page
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: 14 Feb 2015
Pays: Canada, Québec
Status: Inactif
Points: 6419
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 06 Juin 2023 à 21:37
En fait, la dernière version d'OE date d'avant html5

Le "date picker" implicite n'as donc pas été inclus.

Vous devrez faire appel à une astuce:

Insérer un élément "champ de saisie de texte" dans votre page et lui donner la valeur "affichage Non"

Ajouter un bloc de code visuel à l'endroit où vous voulez saisir la date.

Dans ce bloc de code il faut ajouter le code suivant:

<input type="date">

Puis dans un bloc de code javascript ajoutez le code suivant

$("#WEc719ad41a8").change(function(){
$("#WEtarget input").val("coucou");
});

WEc719ad41a8 est le id du bloc de code visuel
WEtarget est le id du champ de saisie de texte non affiché


Dans votre envoi par email, ajoutez l'élément WEtarget 





Edité par Hobby001 - 13 Juin 2023 à 15:43
Haut de la page
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: 14 Feb 2015
Pays: Canada, Québec
Status: Inactif
Points: 6419
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 06 Juin 2023 à 22:46
J'ai une autre idée mais plus simple, on va tromper openElement:

insérez un champ de saisie de texte sur votre page.

puis ajoutez un bloc de code javascript en position endBody

$(document).ready(function(){
var a = document.getElementById("WEtarget");
var inputElement = a.querySelector('input');
inputElement.setAttribute("type","date");
});

WEtarget est simplement le id du champ de saisie de texte.




Edité par Hobby001 - 06 Juin 2023 à 22:47
Haut de la page
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: 14 Feb 2015
Pays: Canada, Québec
Status: Inactif
Points: 6419
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 07 Juin 2023 à 02:48
Bon, j'ai fait un nouvel élément histoire de me rappeler comment



Edité par Hobby001 - 07 Juin 2023 à 10:32
Haut de la page
j74 allez vers le bas
Senior Member
Senior Member


Depuis le: 25 Juil 2010
Status: Inactif
Points: 110
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer j74 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 07 Juin 2023 à 07:37
Incroyable ! Merci beaucoup pour cette astuce !

Du coup ça crée bien un calendrier, qui gère bien les appareils mobiles, etc...
En revanche je ne sais pas si cela peut être adaptable aux différentes langues du site, ce qui était l'avantage de passer par le DatePickr.js et le script donné dans mon 1er post...
Haut de la page
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: 14 Feb 2015
Pays: Canada, Québec
Status: Inactif
Points: 6419
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 07 Juin 2023 à 10:24
Il s'agit d'un type d'élément html5 qui prend la langue du navigateur. 
Haut de la page
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: 14 Feb 2015
Pays: Canada, Québec
Status: Inactif
Points: 6419
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 07 Juin 2023 à 10:27
Haut de la page
j74 allez vers le bas
Senior Member
Senior Member


Depuis le: 25 Juil 2010
Status: Inactif
Points: 110
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer j74 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 07 Juin 2023 à 17:58
Message posté par Hobby001 Hobby001 a écrit:

Il s'agit d'un type d'élément html5 qui prend la langue du navigateur. 

Ah oui, suis-je bête ! Embarrassed
Merci pour toutes les infos et le bout de code !!! Thumbs Up
Haut de la page
j74 allez vers le bas
Senior Member
Senior Member


Depuis le: 25 Juil 2010
Status: Inactif
Points: 110
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer j74 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 08 Juin 2023 à 15:38
J'ai testé, ça marche bien !

Y a-t-il une option néanmoins pour que le format transmis soit en jj-mm-aaaa , plutôt qu'en aaaa-mm-jj
(Le format affiché est bien en jj-mm-aaaa mais transmis au format international)

Edité par j74 - 08 Juin 2023 à 17:42
Haut de la page
Hobby001 allez vers le bas
Admin Group
Admin Group
Avatar
Modérateur

Depuis le: 14 Feb 2015
Pays: Canada, Québec
Status: Inactif
Points: 6419
Options des messages Options des messages   Thanks (0) Thanks(0)   Citer Hobby001 Citer  RépondreRéponse Lien Direct à ce Post Envoyé : 08 Juin 2023 à 18:02
Message posté par j74 j74 a écrit:

J'ai testé, ça marche bien !

Y a-t-il une option néanmoins pour que le format transmis soit en jj-mm-aaaa , plutôt qu'en aaaa-mm-jj
(Le format affiché est bien en jj-mm-aaaa mais transmis au format international)

Le format d'affichage est intimement lié à la langue du navigateur.  Ainsi si le navigateur est configuré pour afficher en anglais américain (en-us), la date s'affichera : 06 / 08 / 2023

Si vous voulez paramétrer la date, vous devez recourir à datepicker.js


Edité par Hobby001 - 08 Juin 2023 à 18:03
Haut de la page
 Répondre Répondre Page  123>
  Partagez ce sujet   

Aller au Forum Permissions du forum allez vers le bas

Forum Software by Web Wiz Forums® version 12.04
Copyright ©2001-2021 Web Wiz Ltd.

Cette page a été affichée en 0.391 secondes.