2017-10-23 1 views
0

on-click seine annehmen, um Werte von Java-Skript und reichen sie an php; Stattdessen wird nur der Dropdown-Wert verwendet, was bedeutet, dass JavaScript-Code nicht ausgeführt wird. Ich bin mir nicht sicher, ob der Java-Script-Code überhaupt läuft? hier ist mein Code:Es läuft nicht Javascript-Code vor PHP, onClick Senden Schaltfläche

<section class="main-container"> 
     <div class="main-wrapper"> 
      <h2>Home</h2> 

        <form method="GET" action="storelocator.php" > 

          <input type="submit" value="Stores"> 
          <input id="latitudeId" name="lat" type="hidden" > 
          <input id="longitudeId" name="lng" type="hidden" > 

          <div class="dropdown"> 
          <select name="radius"> 
           <option value="1000">1000</option> 
           <option value="500" selected="selected" >500</option> 
           <option value="300">300</option> 
           <option value="100">100</option> 
          </select> 
          </div>  

         </form> 

         <p id="show"></p> 


         <script type="text/javascript"> 

           var x = document.getElementById("show"); 
           var form = document.querySelector('form'); 
           form.addEventListener('submit', function(e) { 
            e.preventDefault(); 
            getLocation(); 
           }); 

           //Event to be added to the hidden form 
           function getLocation() { 
            if (navigator.geolocation) { 
             navigator.geolocation.getCurrentPosition(showPosition); 
            } else { 
             x.innerHTML = "Geolocation is not supported by this browser."; 
            } 
           } 
           function showPosition(position) { 
             var lat = position.coords.latitude; 
             var lng = position.coords.longitude; 

             document.getElementById("latitudeId").value = lat; 
             document.getElementById("longitudeId").value = lng; 

             form.submit(); 
           } 


         </script> 
+0

hinzufügen 'console.log ("message" verarbeiten kann); 'in Ihrem JavaScript-Code, und verwenden Sie Browser-Inspect-Tools, um die Konsole zu sehen, ob das Javascript überhaupt läuft. – GrumpyCrouton

+0

Ich sehe keinen Klick-Event-Watcher. Ich sehe einen Submit-Listener, aber keinen Submit-Button. – aynber

+0

Ich sehe, Ihr Formular hat "action = storelocator.php" Sie müssen nicht einige Werte über Ihr Javascript einreichen und dann $ .get verwenden, um das Senden an die storelocator.php zu senden? –

Antwort

0

Sie dieses

<html> 
    <body> 
     <section class="main-container"> 
      <div class="main-wrapper"> 
       <h2>Home</h2> 
       <script> 
        //Event to be added to the hidden form 
        function getLocation() { 
         if (navigator.geolocation) { 
          navigator.geolocation.getCurrentPosition(showPosition); 
         } else { 
          document.getElementById("show").innerHTML = "Geolocation is not supported by this browser."; 
         } 
        } 

        function showPosition(position) { 
         document.getElementById("latitudeId").value = position.coords.latitude; 
         document.getElementById("longitudeId").value = position.coords.longitude; 

         document.getElementById('myForm').submit(); 
        } 
       </script> 

       <form id="myForm" method="GET" action="index.php" > 
        <input type="button" value="Stores" onclick="getLocation()"> 
        <input id="latitudeId" name="lat" type="hidden" > 
        <input id="longitudeId" name="lng" type="hidden" > 
        <div class="dropdown"> 
         <select name="radius"> 
          <option value="1000">1000</option> 
          <option value="500" selected="selected" >500</option> 
          <option value="300">300</option> 
          <option value="100">100</option> 
         </select> 
        </div> 
       </form> 
       <p id="show"></p> 
      </div> 
     </section> 
    </body> 
</html> 

Last das Skript vor dem Inhalt versuchen können, so dass Sie auf Click-Ereignisse

+0

Danke, es funktioniert – EnvisionPeekay

+0

Wählen Sie als Antwort, wenn Sie beantwortet wurden –

Verwandte Themen