Почему <INPUT>не может забрать мою информацию, когда <P>может - PullRequest
0 голосов
/ 21 мая 2018

Я пытаюсь получить некоторые входные коды для обновления значений на основе функции elswhere.

Области P работают, но я не могу заставить его работать с INPUT.

Пожалуйстасм. фото ниже этой работы. Рабочие p

Это в основном вытягивание координат из карт Google.Я знаю, что часть карт Google верна, поскольку она работает с буквами P.

Я также намерен в будущем скрыть типы ввода.и удалите P в целом.

Пожалуйста, смотрите ниже фотографию того, как она работает и обновляется в инструментах разработчика Google, когда я нажимаю на карту

Все p нижеприведенных работ

<!--    Map slot-->
<div id="map" style="Width:100%;height:350px;"></div>

<!--Lat and lng-->
<p id="location"></p>
<input id="location" type="hidden" name="location">

<p id="lat"></p>
<input id="lat" type="hidden" name="lat">

<p id="lng"></p>
<input id="lng" type="hidden" name="lng">

Это маркерный бит в картах Google, который у меня есть, который вытаскивает его.

<script>


function placeMarker(location) {

if ( marker ) {
  marker.setPosition(location);
} else {
  marker = new google.maps.Marker({
    position: location,
    map: map,
    animation:google.maps.Animation.BOUNCE
  });
}

document.getElementById('location').textContent = location.toString(); // get lat and long in 1
document.getElementById('lat').textContent = location.lat(); // get latitude
document.getElementById('lng').textContent = location.lng(); // get longitude
}

</Script>

Ответы [ 2 ]

0 голосов
/ 21 мая 2018

Шаг 1

Измените значение textContent на значение в маркере карты Google

Шаг 2

Дайте ему новый уникальный идентификатор ссылки в вашей форме

Шаг 3

Если вы удалите Ps, входы снова перестанут работать.Вы также должны удалить часть карты Google, в которой вводятся буквы P для входных данных, которые нужно вернуть.

  function placeMarker(location) {
    if ( marker ) {
      marker.setPosition(location);
    } else {
      marker = new google.maps.Marker({
        position: location,
        map: map,
//          Animation of marker
        animation:google.maps.Animation.BOUNCE
      });
    }
//    This gets the full lat and long
  document.getElementById('location').textContent = location.toString(); // get lat and long in 1
  document.getElementById('lat').textContent = location.lat(); // get latitude
  document.getElementById('lng').textContent = location.lng(); // get longitude
   
      //    This gets the full lat and long
  document.getElementById('location2').value = location.toString(); // get lat and long in 1
  document.getElementById('lat2').value = location.lat(); // get latitude
  document.getElementById('lng2').value = location.lng(); // get longitude

  
  }
    <p id="location"></p>
    <input id="location2" type="hidden" name="location">
    
    <p id="lat"></p>
    <input id="lat2" type="hidden" name="lat">
    
    <p id="lng"></p>
    <input id="lng2" type="hidden" name="lng">
0 голосов
/ 21 мая 2018

<input> (HtmlInputElement) не имеет свойства .textContent, поскольку не имеет дочерних узлов.Вместо этого установите свойство .value.

Кроме того, ваши атрибуты id="" должны быть уникальными на странице.Только один элемент может иметь каждое значение id="".

document.getElementById('location').value = location.toString(); 
...