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

Développement Sharepoint .NET Discussion :

Ajax / javascript ? Focus fond noir new element list Sharepoint 2010


Sujet :

Développement Sharepoint .NET

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 24
    Points : 8
    Points
    8
    Par défaut Ajax / javascript ? Focus fond noir new element list Sharepoint 2010
    Bonjour,

    Dans le cadre d'un développement de webpart perso j'aimerais effectuer le même effet fond noir de Sharepoint que l'on retrouve à chaque création d'élément / modificer.

    Ou si il y à une autre méthode d'obtenir le même résultat.

    jérémy

    Edit
    J'aimerais utiliser le "lighbox" déja présent dans Sharepoint.
    j'ai trois boutons avec le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <asp:Button ID="btnModifier" ToolTip="Lien pour modifier la fiche client actuel" Width="80px" runat="server" Text="Modifier" style="background-image:url(http://srvintra/_layouts/images/edititem.gif); background-repeat:no-repeat;background-position:left;text-align:right;" />
    <asp:Button ID="btnAjouter" ToolTip="Lien pour ajouter un nouveau client en gestion technique" Width="80px" runat="server" Text="Ajouter" style="background-image:url(http://srvintra/images/ajouter.png); background-repeat:no-repeat;background-position:left;text-align:right;" />
    <asp:Button ID="btnDocsClients" PostBackUrl="" OnClientClick="aspnetForm.target ='_blank';" ToolTip="Lien vers la bibliothéque de documents du client actuel"  Width="110px" runat="server" Text="Docs Clients" style="background-image:url(http://srvintra/images/documents.gif); background-repeat:no-repeat;background-position:left;text-align:right;"/>
    Je remplis mes liens dans le code behind. Pour les deux premiers boutons, il me faut cette effet afin de pas reload ma page à chaque clic.

  2. #2
    Expert confirmé Avatar de Lapinpanda
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2009
    Messages
    3 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 230
    Points : 4 913
    Points
    4 913
    Par défaut
    utilisation de la fonction OpenApplicationPage("url"); sur l'évenement onclick d'un de tes boutons afin de generer une popup avec le fond qui va bien

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    Salut lapin,

    Je n'ai pas vraiment compris ta solution.
    Cette fonction permet de faire le lightbox ?

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    A lire sur le net il faudrait utiliser:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SP.UI.ModalDialog.showModalDialog

  5. #5
    Expert confirmé Avatar de Lapinpanda
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2009
    Messages
    3 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 230
    Points : 4 913
    Points
    4 913
    Par défaut
    Citation Envoyé par synapsjeremy Voir le message
    A lire sur le net il faudrait utiliser:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SP.UI.ModalDialog.showModalDialog
    http://msdn.microsoft.com/en-us/library/ff410259.aspx

    ce lien a tout ce qui faut pour te combler, c'était OpenPopUpPage je me suis strompé désolé

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    Bon alors ^^

    Dans ma visualwebpart:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:Button ID="btnModifier" runat="server" OnClick="" PostBackUrl="" ToolTip="Lien pour modifier la fiche client actuel" Width="80px" runat="server" Text="Modifier" style="background-image:url(http://srvintra/_layouts/images/edititem.gif); background-repeat:no-repeat;background-position:left;text-align:right;" />
    Dans ma visualwebpart.cs j'aimerais faire quelque chose qui ressemble à ceci(avec l'id de ma liste et l'id de mon item en variable bien sur. La c'est juste pour tester et^être sur d'afficher un item.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    //btnModifier.OnClick = "SP.UI.ModalDialog.showModalDialog({ url: \"http://srvintra/_layouts/listform.aspx?PageType=6&ListId={9903C9E4-BFD8-4A00-9D06-B5093A6F309F}&ID=9\",width: 600,height: 300,title: \"Cool\",})";
    Le probléme c'est que je n'ai pas accés a ma variable Onclick mais uniquement OnClientClick. Ducou ma fenetre s'affiche et disparait aussitot ...

    Une idée ?

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    J'ai bien compris que "onclick" n'est pas une valeur mais une fonction:

    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    void GreetingBtn_Click(Object sender,
                               EventArgs e)
        {
            // When the button is clicked,
            // change the button text, and disable it.
     
            Button clickedButton = (Button)sender;
            clickedButton.Text = "...button clicked...";
            clickedButton.Enabled = false;
     
            // Display the greeting label text.
            GreetingLabel.Visible = true;
        }
    J'aimerais pourtant faire la même que:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <script type="text/javascript">
    function openDialog() 
        { 
            var options = { url: "http://srvintra/_layouts/listform.aspx?PageType=6&ListId={9903C9E4-BFD8-4A00-9D06-B5093A6F309F}&ID=9",width: 600,height: 300,title: "My First Modal Dialog",}; 
            SP.UI.ModalDialog.showModalDialog(options); 
        }
    </script>
     
    <a href="#" onclick="javascript:openDialog(); return false;">  <img src="/_layouts/images/edititem.gif" /> </a>
    Mais en me laissant faire des manipe dans mon code behind ...

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2011
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    Bon j'ai fini par trouvé.

    Voila la solution pour avoir l'effet light out sur un lien:

    Code behind:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    protected void Page_Load(object sender, EventArgs e)
            {              //idcli = Id de l'élément dans ma base infotech
                           //numcli = int qui correspond au numéro unique de mon client
                            Modifier_Liens(idcli, numcli);           
            }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     public void Modifier_Liens(string id,int numcli)
            {
                string url = "http://srvintra/lists/infotech/modifier.aspx?ID=" + id;
                Modifier.HRef = string.Format("javascript:openDialog('{0}')", url);
                //Modifier.HRef = url;
     
                url = "http://srvintra/lists/infotech/ajouter.aspx";
                Ajouter.HRef = string.Format("javascript:openDialog('{0}')", url);
     
                Doc_Client.HRef = "http://srvintra/Docs_Clients/" + numcli + "/";
            }
    Code dans mon visual:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    <%@ Assembly Name="$SharePoint.Project.AssemblyFullName$" %>
    <%@ Assembly Name="Microsoft.Web.CommandUI, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> 
    <%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> 
    <%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
    <%@ Register Tagprefix="asp" Namespace="System.Web.UI" Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
    <%@ Import Namespace="Microsoft.SharePoint" %> 
    <%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
    <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="VisualWebPart1UserControl.ascx.cs" Inherits="WPDataTech.VisualWebPart1.VisualWebPart1UserControl" %>
     
    <script type="text/javascript" src="http://srvintra/_layouts/SP.UI.Dialog.js" ></script>    
    <script type="text/javascript" src="http://srvintra/_layouts/SP.UI.Dialog.debug.js" ></script>
    <Sharepoint:ScriptLink ID="ScriptLink1" Name="sp.ui.dialog.js" LoadAfterUI="true" Localizable="false" runat="server"></Sharepoint:ScriptLink>
     
    <script type="text/javascript">
     
    function openDialog(_url) 
    {
        var options = {
            url: _url,        
            title: "Fiche Client"
        }; 
        SP.UI.ModalDialog.showModalDialog(options); 
    }
    </script>
    <style type="text/css">
    .link 
    a:link{color:black;text-decoration:none;}
    a:hover{color:black;text-decoration:none;}  
    a:active{color:black;text-decoration:none;}
    a:visited{color:black;text-decoration:none;}
    </style>
     
    <div style="float: left;">
    <asp:DropDownList ID="DropDownListClients" runat="server" OnSelectedIndexChanged="Changer_Client" AutoPostBack="true">
    </asp:DropDownList>
    <a href="" runat="server" id="Modifier" title="Lien pour modifier la fiche technique" class="link"><img src="http://srvintra/images/Btn_Modifier.jpg" border="0px"></a>
    <a href="" runat="server" id="Ajouter" title="Lien pour ajouter une fiche technique" class="link"><img src="http://srvintra/images/Btn_Ajouter.jpg" border="0px"></a>
    <a href="" runat="server" id="Doc_Client" title="Lien pour ajouter une fiche technique" target="_blank" class="link"><img src="http://srvintra/images/Btn_Docs.jpg" border="0px"></a>
    <br /><br />
     
    <iframe Id="frame1" width="1000" height="355"  runat="server" scrolling="no" frameborder="0"> 
    </iframe>
    </div>
    Si vous avez des améliorations why not.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Numéro séquentiel dans une liste SharePoint 2010
    Par sabeurkortli dans le forum SharePoint
    Réponses: 3
    Dernier message: 17/03/2015, 13h59
  2. Réponses: 6
    Dernier message: 09/04/2013, 19h44
  3. Accés aux listes Sharepoint 2010
    Par Catarssis dans le forum InfoPath
    Réponses: 4
    Dernier message: 26/12/2012, 09h25
  4. Gerer des droit Par column list sharepoint 2010
    Par lamlam dans le forum Développement Sharepoint
    Réponses: 4
    Dernier message: 12/03/2012, 16h24
  5. [SP-2010] Calcul liste sharepoint 2010
    Par dim45000 dans le forum SharePoint
    Réponses: 2
    Dernier message: 27/04/2011, 11h51

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