werteübergabe

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    dieser term soll dann dadurch ersetzt werden

    HTML Code:
                        if(staffList[i]['is_present'] !== "true" ){
                            continue;
                        }

    Comment


    • #17
      Ich hab keine Ahnung, was du machen möchtest. Du wirfst immer vereinzelte Codefetzen raus und redest kreuz und quer.

      Mal davon abgesehen, dass du die Frage nicht beantwortet hast, wie deine Lösung ohne JavaScript aussieht.

      Comment


      • #18
        hi

        habe keine lösung ohne javascript, da dieses script meine matrix aufbaut

        vom ablauf soll es so sein - ich erstelle aus meiner db tab ein multilistfeld (box)

        die dort selektierten mitarbeiter will ich dann in die schleife einsetzen, die ich bereits habe - bisher holt sich diese schleife, die die matrix erstellt, ihre daten aus der db tab - und zwar alle mitarbeiter die einen wert true besitzen werden eingebunden

        das ist die selctbox
        HTML Code:
         <?php
        //conection:
        $link = mysqli_connect("localhost","root","","ts") or die("Error " . mysqli_error($link));
        
        //consultation:
        
        $query = "SELECT surname, id_staff FROM staff" or die("Error in the consult.." . mysqli_error($link));
        
        //execute the query.
        
        $result = $link->query($query);
        
        //display information:
        echo "<select multiple>";
        while($row = mysqli_fetch_array($result)) {
          echo "<option>".$row["surname"].$row["id_staff"]."</option>";
         
        } 
        echo "</select>";
        ?>
        und das ist der funktionsaufruf javascript

        HTML Code:
        for (var i in staffList){
                            if(staffList[i]['is_present'] !== "true" ){
                                continue;
                            }
        					
                            var th_element = document.createElement('th');
                            th_element.class="day";
                            th_element.style="min-width: 50px; max-width: 60px;"
                            th_element.innerHTML=staffList[i]['surname'];
                            th_element.value=Date.parse(date) + '_' + staffList[i]['id_staff'];
        hier möchte ich diesen part ersetzen
        HTML Code:
        for (var i in staffList){
                            if(staffList[i]['is_present'] !== "true" ){
                                continue;
                            }
        durch die daten, die von der multilistbox kommen - damit ich den folgenden code beibehalten kann

        Comment


        • #19
          Originally posted by jhaustein View Post
          habe keine lösung ohne javascript, da dieses script meine matrix aufbaut
          Und was machen dann User ohne JavaScript?

          Originally posted by jhaustein View Post
          vom ablauf soll es so sein - ich erstelle aus meiner db tab ein multilistfeld (box)

          die dort selektierten mitarbeiter will ich dann in die schleife einsetzen, die ich bereits habe - bisher holt sich diese schleife, die die matrix erstellt, ihre daten aus der db tab - und zwar alle mitarbeiter die einen wert true besitzen werden eingebunden

          das ist die selctbox
          HTML Code:
           <?php
          //conection:
          $link = mysqli_connect("localhost","root","","ts") or die("Error " . mysqli_error($link));
          
          //consultation:
          
          $query = "SELECT surname, id_staff FROM staff" or die("Error in the consult.." . mysqli_error($link));
          
          //execute the query.
          
          $result = $link->query($query);
          
          //display information:
          echo "<select multiple>";
          while($row = mysqli_fetch_array($result)) {
            echo "<option>".$row["surname"].$row["id_staff"]."</option>";
           
          } 
          echo "</select>";
          ?>
          und das ist der funktionsaufruf javascript

          HTML Code:
          for (var i in staffList){
                              if(staffList[i]['is_present'] !== "true" ){
                                  continue;
                              }
          					
                              var th_element = document.createElement('th');
                              th_element.class="day";
                              th_element.style="min-width: 50px; max-width: 60px;"
                              th_element.innerHTML=staffList[i]['surname'];
                              th_element.value=Date.parse(date) + '_' + staffList[i]['id_staff'];
          Woher kommt die JavaScript-Variable staffList?

          Originally posted by jhaustein View Post
          hier möchte ich diesen part ersetzen
          HTML Code:
          for (var i in staffList){
                              if(staffList[i]['is_present'] !== "true" ){
                                  continue;
                              }
          durch die daten, die von der multilistbox kommen - damit ich den folgenden code beibehalten kann
          Und warum verwendest du nicht einfach die Daten aus deiner Variable staffList?

          Comment


          • #20
            lieben dank für deine antwort -

            das script läuft local - deshalb kann ich auch es mit javascript machen

            stafflist sind doch alle mitarbeiter, deren wert auf true steht - true heisst bei mir, die mitarbeiter sind angestellt - ich möchte aber die matrix so aufstellen können, dass ich von allen mitarbeitern die vorhanden sind - mir ein paar aussuchen kann, die dann angezeigt werden sollen

            Comment


            • #21
              ... deshalb bruache ich diese array struktur

              HTML Code:
              staffList[0] = new Array();
                staffList[0]["surname"] = "Piet"; 
                staffList[0]["id_staff"] = "9"; 
                staffList[0]["is_present"] = "true"; 
              
               
                staffList[1] = new Array();
                staffList[1]["surname"] = "Inga"; 
                staffList[1]["id_staff"] = "10"; 
                staffList[1]["is_present"] = "true";

              Comment


              • #22
                Originally posted by jhaustein View Post
                lstafflist sind doch alle mitarbeiter, deren wert auf true steht
                Wozu wird das dann noch zusätzlich mit if() gefprüft, wenn das eh auf alle zutrifft?

                Originally posted by jhaustein View Post
                true heisst bei mir, die mitarbeiter sind angestellt - ich möchte aber die matrix so aufstellen können, dass ich von allen mitarbeitern die vorhanden sind - mir ein paar aussuchen kann, die dann angezeigt werden sollen
                Also ich hätte das so verstanden, dass in staffList sowieso schon alle Mitarbeiter drin stehen. Aber die Frage wo die Variable staffList her kommt, hast du noch immer nicht beantwortet.

                Comment


                • #23
                  ich habe auch mitarbeiter drin, die auf false stehen, falls ich mal die daten von denen brauche

                  Comment


                  • #24
                    die stafflist möchte ich ja durch die listbox auswahl ersetzen

                    Comment


                    • #25
                      Dann verwende wie bereits hier vorgeschlagen Custom Data Attribute.

                      Comment


                      • #26
                        kannst du mir das vielleicht erklären,

                        ich habe ja nun zwei probleme -

                        1. das erstellen der multilistbox mit mehreren attributen - dachte so
                        HTML Code:
                        <?php
                        //conection:
                        $link = mysqli_connect("localhost","root","","ts") or die("Error " . mysqli_error($link));
                        
                        //consultation:
                        
                        $query = "SELECT surname, id_staff FROM staff" or die("Error in the consult.." . mysqli_error($link));
                        
                        //execute the query.
                        
                        $result = $link->query($query);
                        
                        //display information:
                        echo "<select>";
                        while($row = mysqli_fetch_array($result)) {
                          echo "<option>".$row["surname"]."</option>";
                        } 
                        echo "</select>";
                        ?>
                        und nun das hauptprob
                        2. die übergabe zum javascript

                        Comment


                        • #27
                          Verarbeitung:
                          PHP Code:
                          $db mysqli_connect('localhost''root''''ts') or die(mysqli_error($db));

                          $sql 'SELECT surname, id_staff FROM staff';
                          $staff_result mysqli_query($db$sql); 
                          Ausgabe:
                          PHP Code:
                          <select name="staff" multiple="multiple">
                              <?php while ($row mysqli_fetch_assoc($staff_result)): ?>
                              <option value="<?php echo htmlspecialchars($row['id_staff'], ENT_COMPAT'UTF-8'); ?>">
                                  <?php echo htmlspecialchars($row['surname'], ENT_COMPAT'UTF-8'); ?>
                              </option>
                              <?php endwhile; ?>
                          </select>
                          Last edited by h3ll; 29-12-2014, 17:07.

                          Comment


                          • #28
                            klasse - bloss wie erstelle ich das array nach der auswahl in diese form für mein js

                            HTML Code:
                              staffList[0] = new Array();
                              staffList[0]["surname"] = "Piet"; 
                              staffList[0]["id_staff"] = "9"; 
                              staffList[0]["is_present"] = "true"; 
                            
                             
                              staffList[1] = new Array();
                              staffList[1]["surname"] = "Inga"; 
                              staffList[1]["id_staff"] = "10"; 
                              staffList[1]["is_present"] = "true";

                            Comment


                            • #29
                              Code:
                              var staffList = $('select[name="staff"] > option').map(function () {
                                  var $option = $(this);
                                  return {
                                      surname: $.trim($option.text()),
                                      id_staff: $option.val()
                                  };
                              }).get();

                              Comment


                              • #30
                                lieben dank für deine mühe - habe es nun so eingebaut, wie du beschrieben hast

                                leider bekomme ich keine werte übergeben, die selektiert wurde
                                HTML Code:
                                                var staffList = new Array();
                                                staffList = getStaffList();
                                var staffList = $('select[name="staff"] > option').map(function () {
                                    var $option = $(this);
                                    return {
                                        surname: $.trim($option.text()),
                                        id_staff: $option.val()
                                    };
                                }).get();
                                
                                               for (var i in staffList){
                                
                                					
                                                    var th_element = document.createElement('th');
                                                    th_element.class="day";
                                                    th_element.style="min-width: 50px; max-width: 60px;"
                                                    th_element.innerHTML=staffList[i]['surname'];
                                                    th_element.value=Date.parse(date) + '_' + staffList[i]['id_staff'];
                                kann man in js per buttonklick eine function dierkt ansprechen zum ausführen

                                im mom kann ich die listwerte markieren - und nun möchte ich die funktion ansprechen, die ausgeführt werden soll

                                Comment

                                Working...
                                X