IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SharePoint .NET Discussion :

Ouvrir un formulaire dans une dialog box


Sujet :

SharePoint .NET

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2006
    Messages : 99
    Points : 70
    Points
    70
    Par défaut Ouvrir un formulaire dans une dialog box
    Bonjour tout le monde!

    Mon souci est dans le titre: Comment ouvrir un formulaire de liste dans une dialog box?

    Vous me direz "Dans une liste, fastoche, tu vas dans les paramètres avancés, etc", ce que je sais bien.
    Mais là, il s'agit d'ouvrir le formulaire de la liste depuis une autre page que ma liste.

    Voici le contexte:
    J'ai une liste de demandes.
    Les salariés de mon entreprise doivent pouvoir créer une demande dans cette liste.
    Cependant, ils ne doivent pas accéder à la liste directement, mais ils la voient grâce au webpart que j'ai mis en page d'accueil (la seule page à laquelle ils ont accès).
    Par contre, comme ils n'ont aucun moyen de créer une demande avec ce webpart, je leur ai ajouté un bouton "Nouvelle demande" (une image à laquelle j'ai associé un lien URL).
    Je pensais m'en sortir avec un URL de ce type:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    https://monentreprise.com/teams/monsite/Lists/Demandes/NewForm.aspx?RootFolder=&IsDlg=1
    (C'est l'URL de ma dialog box lorsque je créé un élément depuis ma liste)

    Et là, déception: ça ne lance pas mon formulaire dans une dialog box, mais ça prend toute la page.

    Que me manque t-il pour pouvoir faire en sorte que ma dialog box s'ouvre depuis ma page d'accueil comme si on était sur la page de la liste?


    Merci d'avance!

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2006
    Messages : 99
    Points : 70
    Points
    70
    Par défaut
    Juste pour compléter mon "enquête":

    J'ai essayé en passant par des liens promus / promoted links, et même en spécifiant "Comportement du menu de lancement = Dialog", ça n'a rien donné...

    Help!

  3. #3
    Expert confirmé
    Avatar de ludojojo
    Homme Profil pro
    Développeur SharePoint
    Inscrit en
    Avril 2008
    Messages
    2 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SharePoint
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 967
    Points : 5 347
    Points
    5 347
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Ton approche est bonne mais il te manque quelques informations... Le paramètre IsDlg permet de spécifier en effet que tu es dans une page en mode popup, mais celui ci n'est pris en compte par SharePoint que pour la gestion du rubban et du Workspace...

    Pour afficher ton menu de création dans une popup depuis une autre page, il te faut utiliser un peu de code javascript (ECMAScript). En effet le model objet de SharePoint te permet de créer des boites de dialogues via son API.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SP.UI.ModalDialog.showModalDialog(options);
    Quelques explications sur son utilisation sur MSDN.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2006
    Messages : 99
    Points : 70
    Points
    70
    Par défaut
    Mince, c'est ce que je craignais...
    Mais dans ce cas, pour les liens promus, à quoi sert l'option "Comportement du menu de lancement = Dialog"???
    Si ce n'est pas pour lancer le lien dans une dialog box, alors pourquoi...?

    J'avais espéré éviter de passer par du JS mais bon...
    Je vais essayer!

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2006
    Messages : 99
    Points : 70
    Points
    70
    Par défaut
    Ouille!
    C'est carrément un truc à développer avec VS et à implémenter au cas par cas!
    Là, ma boîte va me dire non, avec un grand N, parce que on a interdiction de faire du dev, et on doit faire avec du standard, uniquement.
    Ca aurait été juste un petit bout de JS à coller quelque part, et à réutiliser pour chaque lien à ouvrir en dialog box, ça l'aurait fait.
    Mais là... :S

    Y'a pas un autre moyen plus simple?

    Et sinon, très sérieusement: A quoi sert l'option "Comportement du menu de lancement = Dialog" ? Je ne comprends vraiment pas...

  6. #6
    Expert confirmé
    Avatar de ludojojo
    Homme Profil pro
    Développeur SharePoint
    Inscrit en
    Avril 2008
    Messages
    2 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SharePoint
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 967
    Points : 5 347
    Points
    5 347
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Kael_004 Voir le message
    C'est carrément un truc à développer avec VS et à implémenter au cas par cas!
    Tu peux rendre ton script générique pour qu'il puisse s'appliquer à un maximum de situation. Quand à visual studio il n'est nécessaire que si tu souhaites utiliser un package pour déployer ton script. Mais pour ton besoin, un simple fichier JavaScript hébergé sur ton site fera l'affaire...


    Citation Envoyé par Kael_004 Voir le message
    Et sinon, très sérieusement: A quoi sert l'option "Comportement du menu de lancement = Dialog" ? Je ne comprends vraiment pas...
    Est-ce que tu utilises IE pour faire tes tests ?

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2006
    Messages : 99
    Points : 70
    Points
    70
    Par défaut
    Oui, voilà! C'est ça qu'il me faut! Un petit javascript planqué qq part sur mon site!
    Comment je dois procéder, ô grand maître?

    Et sinon, oui, j'utilise IE pour faire mes tests. Pourquoi?

  8. #8
    Expert confirmé
    Avatar de ludojojo
    Homme Profil pro
    Développeur SharePoint
    Inscrit en
    Avril 2008
    Messages
    2 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SharePoint
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 967
    Points : 5 347
    Points
    5 347
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Kael_004 Voir le message
    Comment je dois procéder
    Tu peux stoquer ton script dans la "Style library" afin que ce dernier soit accessible sur l'ensemble de ta collection de site et de ces sous-sites. En revanche si tu veux l'utiliser sur plusieurs collections de site, je te conseil de le déployer dans le "Layout" (de chaque serveur)

    Citation Envoyé par Kael_004 Voir le message
    Et sinon, oui, j'utilise IE pour faire mes tests. Pourquoi?
    Chaque navigateur à ses propres standards, normes, moteur javascript etc... Du coup le rendu, fonctionnement, bugs visibles peuvent dépendre du navigateur que tu utilises. En travaillant avec SharePoint, produit de Microsoft, l'utilisation de IE est recommendé

    Je t'invite à commencer à faire ton script afin d'obtenir quelque chose qui se rapproche de ton besoin. On verra ensuite comment le rendre générique et facile à réutiliser. Pour commencer tu peux suivre les tutos que je t'ai référencé, en travaillant uniquement avec la partie JavaScript. Tu stoques ton fichier dans la style library et tu le référence dans ta webpart (propriété JSLink).

  9. #9
    Membre à l'essai
    Homme Profil pro
    autre
    Inscrit en
    Mars 2014
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Afghanistan

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Mars 2014
    Messages : 27
    Points : 20
    Points
    20
    Par défaut
    je relance le post car j'ai eu la même problématique
    j'ai rencontré beaucoup de problème avec : SP.UI.$create_DialogOptions();

    mais j'ai trouvé une solution sous sharepoint 2013 avec

    SP.SOD.execute('sp.ui.dialog.js', 'SP.UI.ModalDialog.showModalDialog', options);

    Mon problème actuel c'est que que le popup commence à s'afficher mais la page en arrière plan se reload et me ferme tout ca.....
    Si j'ai bien compris le reload se fait après chaque demande au serveur pour mettre à jour
    comment bloquer ce reload ?
    ce qui m'étonne c'est que ce popup se déclenche par un bouton et ce bouton est associé à une fonction
    mais qd je met ma soutis dessus je remarque qu'il pointe vers une url !! celle de la page en cours en cours .... mais rien dans le DOM
    je vais creuser ca

    J'ai bien regarder du coté de Ajax mais c'est pas évident...

    As tu résolu ton pb ?

  10. #10
    Membre à l'essai
    Homme Profil pro
    autre
    Inscrit en
    Mars 2014
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Afghanistan

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Mars 2014
    Messages : 27
    Points : 20
    Points
    20
    Par défaut
    En examinant un peu:
    si je crée un bouton dans une conteneur sans onclick ni redirection, en cliquant sur ce bouton il me redirige vers la même page , celle ou il se trouve.....
    Du coup ma fonction n'a pas le temps de s’exécuter et la page au final se recharge .....
    tres étrange......

  11. #11
    Membre à l'essai
    Homme Profil pro
    autre
    Inscrit en
    Mars 2014
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Afghanistan

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Mars 2014
    Messages : 27
    Points : 20
    Points
    20

  12. #12
    Expert confirmé
    Avatar de ludojojo
    Homme Profil pro
    Développeur SharePoint
    Inscrit en
    Avril 2008
    Messages
    2 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur SharePoint
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 967
    Points : 5 347
    Points
    5 347
    Billets dans le blog
    5
    Par défaut
    Désolé pour le délais de réponse...
    Citation Envoyé par berms Voir le message
    si je crée un bouton dans une conteneur sans onclick ni redirection, en cliquant sur ce bouton il me redirige vers la même page , celle ou il se trouve.....
    C'est sans doute par ce qu'on bouton devait avoir un rôle de submit, ce qui à pour effet de faire un postback.

  13. #13
    Expert éminent
    Avatar de Ditch
    Inscrit en
    Mars 2003
    Messages
    4 160
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2003
    Messages : 4 160
    Points : 9 634
    Points
    9 634
    Par défaut
    Bonjour,

    Après vérification:
    - Il est possible d'ouvrir un formulaire dans une boîte de dialogue via les promoted links.

    Testé avec https://www.google.fr en dialog.

Discussions similaires

  1. Changement dynamique de text dans une Dialog Box
    Par LordDaedalus dans le forum Composants graphiques
    Réponses: 4
    Dernier message: 15/07/2010, 17h49
  2. Réponses: 4
    Dernier message: 15/06/2009, 21h10
  3. alignement dans une dialog() box
    Par zyongh dans le forum jQuery
    Réponses: 1
    Dernier message: 19/02/2009, 00h33
  4. courbe dans une Dialog Box
    Par danymanix dans le forum MFC
    Réponses: 3
    Dernier message: 15/12/2006, 10h31
  5. Réponses: 3
    Dernier message: 23/08/2006, 16h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo