2017-09-09 14 views
-1

私はここにユーザーの現在の場所を表示するコードがあります。このコードは既に動作しています。私の問題は、id "#location"を現在の場所がテキストボックス形式になるようにHTMLフォームのテキストボックスの値として配置する方法です。テキストボックスの値としてユーザーの現在の場所を表示

$(document).ready(function(){ 
    if (navigator.geolocation) { 
     navigator.geolocation.getCurrentPosition(showLocation); 
    } else { 
     $('#location').html('Geolocation is not supported by this browser.'); 
    } 
}); 

function showLocation(position) { 
    var latitude = position.coords.latitude; 
    var longitude = position.coords.longitude; 
    $.ajax({ 
     type:'POST', 
     url:'../geo/getLocation.php', 
     data:'latitude='+latitude+'&longitude='+longitude, 
     success:function(msg){ 
      if(msg){ 
       $("#location").html(msg); 
      }else{ 
       $("#location").html('Not Available'); 
      } 
     } 
    }); 
} 

HTML:

Location: <input id="location" type="text" value="" size="50"> 
<br> 

enter image description here

+1

何が問題ですか?あなたのAjaxリクエストは応答として何を返しますか?あなたはまったくデバッグしましたか? – trincot

+1

私のコードはすでに動作しています。ユーザーの現在の位置を示しています。私の問題は、現在の場所がテキストボックスのフォームに行くように私のHTMLテキストボックスフォームの値としてid #locationを配置する方法です。 –

+0

質問を修正したのはなぜですか?あなたは本当に "コード"は正しい英語だと思いますか? – trincot

答えて

0

問題は方法の間違った選択であるときにAjaxのリクエストは、(我々はそれが返すデータの種類を知りません)正常に動作する場合。 .html()の代わりに.val()を使用すると、inputの内部にhtmlを挿入できないためです。

if (msg) { 
    $("#location").val(msg); 
} else { 
    $("#location").val('Not Available'); 
} 
+0

私のコードはすでに動作しています。ユーザーの現在の位置を示しています。私の問題は、現在の場所がテキストボックスのフォームに行くように私のHTMLテキストボックスフォームの値としてid #locationを配置する方法です。 –

+0

私が言ったように、 '.html()'の代わりに '.val()'を使います。 – voloshin

+0

ありがとうございました、先ほどお伝えしたように置き換えて、今は動作しています。 –

関連する問題