Ankündigung

Einklappen
Keine Ankündigung bisher.

html formular daten an JS weitergeben ohne seite verlassen

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • html formular daten an JS weitergeben ohne seite verlassen

    Hallo,
    ich habe das schon probiert mit
    HTML-Code:
    <form  action="http://localhost:8002/prodmde/js/line-db-php.js" method="post">
     Start Date: <input type="text" name="StartDate"id="StartDate"/><br />
     <input type="Submit" value="Absenden" />
    </form>
    usw

    aber da wird eben immer die Seite gewechselt und ich sehe den js Code im Explorer.
    Gibt es hierzu eine Möglichkeit?
    Danke und Gruß.


  • #2
    Ja klar, action ist ja auch das "Ziel" des Forms.

    Suche zB mal nach html send form ajax .. dann findest du einiges dazu, zB: https://developer.mozilla.org/en-US/...ugh_JavaScript
    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
    PHP.de Wissenssammlung | Kein Support per PN

    Kommentar


    • #3
      Vielen Dank!
      Habe mal ein Beispiel probiert:



      HTML-Code:
      <form  action="" method="post">
       <div id="ajax-content">
       Start Date: <input type="text" name="StartDate"id="StartDate"/><br />
        </div>
      
       <input type="Submit" value="Absenden" />
      </form>



      HTML-Code:
      var myRequest = new XMLHttpRequest();
       myRequest.open('GET', 'http://localhost:8002/prodmde/line-db-php.html');
       myRequest.onreadystatechange = function () {
       if (myRequest.readyState === 4) {
        document.getElementById('ajax-content').innerHTML = myRequest.responseText;
         }
        };
       function sendTheAJAX() {
          myRequest.send();
          document.getElementById('StartDate').value = "261277";
      
        }
      aber es tut nicht .
      Hat jemand ein einfaches Beispiel wie man mit JS auf ein HTML Form in einer anderen Seite zugreifen kann?
      Danke und Gruß.

      Kommentar


      • #4
        Das muss der Webserver erlauben. Siehe:

        https://de.wikipedia.org/wiki/Cross-...source_Sharing

        Kommentar


        • #5
          Ach du sch...ade. Danke!. Gibt es hier einfachere Ansätze, Hauptsache ich kann aus JS ein Form in einer HTML Seite lesen?
          Muss nicht super elegant sein reicht lokal unter xampp.

          Kommentar


          • #6
            Wie gesagt, mit JavaScript nur, wenns der Webserver erlaubt. Das hat schon so seinen Sinn, weil es ein Sicherheitsfeature ist. Wäre es mäglich, wäre das eine Sicherheitslücke.

            Kommentar


            • #7
              Vielen Dank.
              Meine HTML Seite sieht so aus:

              HTML-Code:
              <!DOCTYPE html>
              <html>
              <head>
                  <title>ChartJS - Line</title>
              
                  <link href="css/default.css" rel="stylesheet" >
              
                  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>    <!-- mzi update -->
              
              </head>
              <body>
              
              <!--http://localhost:8002/prodmde/js/line-db-php.js-->
              <form  action="" method="post">
                  <div id="ajax-content">
                  Start Date: <input type="text" name="StartDate"id="StartDate"/><br />
                   </div>
              
                  <input type="Submit" value="Absenden" />
              </form>
                  <div class="chart-container">
                      <canvas id="line-chartcanvas"></canvas>
                  </div>
              
                  <!-- javascript -->
                  <script src="js/jquery.min.js"></script>
                  <script src="js/Chart.min.js"></script>
                                                                              <!--StartDate.Value-->
                  <script src="js/line-db-php.js"></script>
              
                  <!-- api/data.php -->
                  <!-- action=""-->
              
              </body>
              </html>
              wie könnte ich nun Parameter in die "js/line-db-php.js" übergeben ohne da rein zu navigieren?
              Danke und Gruß.

              Kommentar


              • #8
                habe ua. getestet:
                html Aufruf:
                HTML-Code:
                <script id="mainhtml" src="js/line-db-php.js?26"   ></script>
                JS:
                HTML-Code:
                $.ajax({
                        url : "http://localhost:8002/Prodmde/line-db-php.html",    //mzi port notwendig
                        type : "GET",   //oder POST
                
                        success : function(data){
                
                            console.log (data);
                        }
                    });
                console log bringt den html code der aufrufseite ??
                wieso denn das? ich wollte doch den Parameter?

                wie könnte ich nun Parameter in die "js/line-db-php.js" übergeben ohne da rein zu navigieren?


                Danke und Gruß.


                Kommentar


                • #9
                  Die Frage ergibt keine Sinn. js/line-db-php.js ist nur eine JavaScript-Datei. Da kann nichts übergeben oder navigiert werden.

                  Kommentar


                  • #10
                    Danke.
                    Gibt es keine Möglichkeit einen Formularinhalt der html Seite in der Aufgerufenen JS zu verwenden?

                    Kommentar


                    • #11
                      Zitat von Karle Beitrag anzeigen
                      Gibt es keine Möglichkeit einen Formularinhalt der html Seite in der Aufgerufenen JS zu verwenden?
                      Du kannst mit JavaScript auf alle Elemente der Webseite zugreifen.

                      Kommentar


                      • #12
                        z.b. hiermit:
                        http://api.jquery.com/val/

                        Kommentar


                        • #13
                          Super,Danke!!!
                          Funktioniert grundlegend!! nun wollte ich noch value

                          HTML-Code:
                          var value;
                          $( "input" )
                           value = $( this ).val();
                          
                          $.ajax({
                                  url : "http://localhost:8002/Prodmde/api/data.php",  
                                  type : "GET",
                                  data: { StartDate: value} ,
                          
                          
                          mit übergeben aber das geht nicht ??
                          'value' und "value" habe ich getestet geht auch nicht.

















                          Kommentar


                          • #14
                            "geht nicht" ist keine brauchbare Fehlerbeschreibung.

                            Und der Code-Fetzen ergibt keinen Sinn und ist auch unbrauchbar um das Problem zu erklären.

                            Kommentar


                            • #15
                              Ich wollte das Input feld auslesen und cen Wert des Feldes in die AJAX als Parameter mitgeben. Ausgangspunkt war der Code
                              HTML-Code:
                              var value;
                              
                                  $( "input" )
                                  .keyup(function() {
                                      value = $( this ).val();
                              
                                      $( "p" ).text( value );
                                      })
                                  .keyup();
                              geht nicht heisst soviel wie der Wert wird nicht übergeben...

                              Kommentar

                              Lädt...
                              X