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

jQuery Discussion :

Insérer un bouton dans une colonne en fonction d'une autre colonne


Sujet :

jQuery

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Cyberdocumentaliste
    Inscrit en
    Mai 2017
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Cyberdocumentaliste
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2017
    Messages : 16
    Par défaut Insérer un bouton dans une colonne en fonction d'une autre colonne
    Bonjour à tous, je suis profane en javascript et pour mon travail je dois insérer un bouton dans une colonne action, cette colonne action ne doit s'afficher qui si dans mon tableau
    la colonne site actuelle comporte le mot magasin (voir fichier ci-joint)

    j'ai récupéré le code ci dessous pour afficher un bouton qui s'appuie sur $("td.call_no > a").each(function (index) { (je bosse en bibliothèque sur des ouvrages et certains ouvrait ont une référence alphanumérique pour signaler le document. J'aimerai transformer ce code pour n'afficher le bouton que quand celui comporte l'info magasin dans la colonne site actuel et que la colonne Date de retour prévue soit vide, mais j'avoue que je me casse un peu les dents, j'arrive à afficher des boutons mais qui ne répondant pas à mes besoins, dans l'image ci-dessous, il ne devrait y avoir qu'un seul bouton celui du bas, est ce que quelqu'un peut m'aider merci d'avance.


    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    $(document).ready(function () {
       function GetURLParameter(sParam) {
          var sPageURL = window.location.search.substring(1);
          var sURLVariables = sPageURL.split("&");
          for (var i = 0; i < sURLVariables.length; i++) {
             var sParameterName = sURLVariables[i].split("=");
             if (sParameterName[0] == sParam) {
                return sParameterName[1];
             }
          }
       }
     
     
     
       if (borrowernumber) {
          var pathname = window.location.pathname;
          if (pathname.search(/opac-detail.pl/)) {
             $("#item_holds").after("<th class='sorting-disable' rowspan='1'   colspan='1'>Action</th>");
     
             $("td.call_no > a").each(function (index) {
                $(this).parent().first().nextAll().last().after("<td></td>");
                var href = $(this).attr("href");
                var regex = /itemnumber=([0-9]+)#holdings/;
                var match = regex.exec(href);
                var itemnumber = match[1];
                var target_cell = $(this).parent().first().nextAll().last();
                var id = "dialog-" + itemnumber;
                var biblionumber = GetURLParameter("biblionumber");
                $.getJSON("/api/v1/contrib/iwt/item/" + itemnumber + "/opac-info", function (iwantthis) {
                   var button = "";
                   if ("geturlopac" in iwantthis) {
                      var requestdialogid = "requestdialog" + itemnumber;
                      button = "<a class='btn btn-primary' href='" + iwantthis.geturlopac + "'><i class='fa fa-book'></i> Demander le document</a>";
                   }
                   button += "<button type='button' class='btn btn-secondary' data-dismiss='modal'>Fermer</button>";
                   var modaldialog = "<div class='modal fade' id='" + id + "' tabindex='-1' role='dialog' aria-labelledby='modal" + id + "' aria-hidden='true'>";
                   modaldialog += "<div class='modal-dialog'  role='document'>";
                   modaldialog += "<div class='modal-content'>";
                   modaldialog += "<div class='modal-head'>";
                   modaldialog += "<h5 class='modal-title'>Comment obtenir ce document</h5>";
                   modaldialog += "</div>";
                   modaldialog += "<div class='modal-body'>";
                   modaldialog += "<p>" + iwantthis.message + "</p>";
                   modaldialog += button;
                   modaldialog += "</div></div></div></div>";
                   $(target_cell).append("<a class='btn btn-default btn-xs' data-toggle='modal' data-target='#" + id + "' title='Obtenir'><i class='fa fa-hand-o-left'></i> Obtenir</a>" + modaldialog);
                   if (myLocation.match("Magasin")) {
                      $(target_cell).append("<a class='btn btn-default btn-xs' id='mybtn'  title='Plop'><i class='fa fa-hand-o-left'></i> Plop</a>" + modaldialog);
                   }
                   $("#mybtn").click(function () {
                      var biblionumber = GetURLParameter("biblionumber");
                      alert("requete envoyé: " + biblionumber);
                      $.getJSON("/api/v1//contrib/wrm/request?biblionumber=" + biblionumber + "&type=plop&itemnumber=" + itemnumber + "&branchcode=IEP", function (request) {});
                   });
                });
             });
          } else if (pathname.search(/opac-stack-request.pl/)) {
             $.getJSON("/api/v1/contrib/wrm/opac-request?biblionumber=[% biblionumber %]&itemnumber=[%itemnumber %]&branchcode=IEP", function (request) {
                if (request.state == "success") {
                   $("modaltitle").append("Le document est bien réservé pour vous");
                   $("modalmessage").append("Vous pourrez aller le chercher bientôt à la banque");
                } else {
                   $("modaltitle").append("Une erreur s'est produite :");
                   $("modalmessage").append("Erreur :" + request.error + "<br/>Vous pouvez vous adresser à la banque de la bibliothèque pour régler ce problème.");
                }
                $("#dialogresult").modal({ show: true });
             });
          }
       } else {
          var pathname = window.location.pathname;
          if (pathname.search(/opac-detail.pl/)) {
             if (biblionumber) {
                $("#has-search-query").val("q=sn:" + biblionumber);
             }
             $("#item_holds").after("<th class='sorting-disable' rowspan='1'   colspan='1'>Action</th>");
             $("td.call_no > a").each(function (index) {
                $(this).parent().first().nextAll().last().after("<td><a class='btn btn-default btn-xs' data-toggle='modal' data-target='#loginModal' title='Obtenir'><i class='fa fa-hand-o-left'></i> Obtenir</a></td>");
             });
          }
       }
    });
    Images attachées Images attachées  

Discussions similaires

  1. Insérer un bouton dans une cellule datagridview
    Par hanadakia dans le forum VB.NET
    Réponses: 6
    Dernier message: 05/06/2018, 16h57
  2. insérer un bouton dans une feuille excel lié à une fonction vba
    Par thierry_b dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 16/06/2009, 12h14
  3. Cliquer sur un bouton dans une autre application
    Par FredericB dans le forum C++Builder
    Réponses: 16
    Dernier message: 10/05/2008, 17h23
  4. Réponses: 1
    Dernier message: 27/02/2008, 10h24
  5. JTable : comment insérer un bouton dans une cellule ?
    Par donyas dans le forum Composants
    Réponses: 2
    Dernier message: 08/08/2006, 15h54

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