2013-10-10 4 views
0

В моей форме у меня есть 3 скрытых входа, которые предназначены для получения текущей широты и долготы пользователя и отправки их в базу данных MySQL. Я пробовал код, но когда я запускаю его в мобильной среде, он ясно показывает, что оба входа не заполнены широтой и долготой.Геолокация на JQuery Мобильная заявка

HTML код

<div id="clockinPage" data-role="page" data-theme="c"> 
    <div id="wrapper_top_image"> 
     <div id="top_image"></div> 
    </div> 
    <div id="authentic">The information below will be used as Clock-In register.</div> 
    <div data-role="content" > 
     <div id="landmark-1" data-landmark-id="1"> 
      <form id="cname" align="left" action="post" data-ajax="false" > 
       <label for "id">Employee's Name:</label><br/> 
       <select name="id" id="id"> 
       <option value=""></option> 
       </select><br/> 
       <label for "job_id">Job's Name:</label><br/> 
       <select name="job_id" id="job_id"> 
       <option value=""></option> 
       </select><br/> 
       <input type="hidden" name="latitued" id="latitued" value=""><br/> 
       <input type="hidden" name="longitude" id="longitude" value="" > 
       <input type="hidden" name="goo_map_api" id="goo_map_api" value=""> 
       <input type="submit" value="Clock-In" id="enviar_in" data-inline="true">   
      </form> 
     </div> 
    </div 
</div> 

JQuery скрипт

$(document).on('pagebeforeshow', '#clockinPage', function() { 

    var Geo={}; 

    if (navigator.geolocation) { 
     navigator.geolocation.getCurrentPosition(success, error); 
    } 

    //Get the latitude and the longitude; 
    function success(position) { 
     Geo.lat = position.coords.latitude; 
     Geo.lng = position.coords.longitude; 
     populateHeader(Geo.lat, Geo.lng); 
    } 

    function error(){ 
     console.log("Geocoder failed"); 
    } 

    function populateHeader(lat, lng){ 
     $('#latitued').html(lat); 
     $('#longitude').html(lng); 
     $('#goo_map_api').html("http://maps.googleapis.com/maps/api/geocode/json?latlng="+lat+","+lng+"&sensor=false"); 
    } 

});

При попытке опубликовать информацию из вышеуказанной формы, она возвращает следующую ошибку: Ошибка приложения. Произошла сетевая ошибка. (Файл: /// android_asset/WWW/идентификатор сообщения = 1 & job_id = 2 & latitued = & долгота = & goo_map_api =)

Это ясно показывает, что он получает входной выберите идентификатор, выберите входной job_id но 3 левых, широты, долготы и goo_map_api пусты. Кто-нибудь знает, что происходит? Спасибо.

ответ

0

Удалите отметку if, просто имейте: navigator.geolocation.getCurrentPosition (успех, ошибка);

+0

Я сделал, но ошибка сохраняется! –

+0

Perfect @ Sheetal. Он работает как шарм! Благодарю. –

Смежные вопросы