Как получить отображение этого javascript возвращаемого значения в html поле ввода? - PullRequest
0 голосов
/ 20 февраля 2020

Я хочу получить результат JavaScript в моем поле ввода, чтобы при выводе на него я получал значение sh на моем сервере.

В этом коде я могу получить Javascript результат в HTML, но я не знаю, как отобразить его в поле ввода.

Мой код указан ниже. Он вернет IP-адрес локальной сети.

Я создаю эту страницу для получения локальных IP-адресов из нашего офиса p c. Теперь IP-адрес отображается на веб-странице, но я хочу, чтобы он отображался в поле ввода, чтобы при нажатии пользователем кнопки «Отправить» результат передавался на сервер / в базу данных.

При использовании в HTML тело будет отображаться на веб-странице. Этот класс = 'ipAdd' должен отображаться в поле ввода путем установки его значения.

$(document).ready(function ubsrt() {
  window.RTCPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;
  var pc = new RTCPeerConnection({
      iceServers: []
    }),
    noop = function() {};

  pc.createDataChannel("");
  pc.createOffer(pc.setLocalDescription.bind(pc), noop);
  pc.onicecandidate = function(ice) {
    if (!ice || !ice.candidate || !ice.candidate.candidate) return;

    var myIP = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/.exec(ice.candidate.candidate)[1];

    console.log('my IP: ', myIP);
    $('.ipAdd').text(myIP);

    pc.onicecandidate = noop;

  };
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="formGroup">
  <label for="address">IP Address</label> <br>
  <input type="text" class="one" id="address" name="address" size="50px" id="" Value="id=" list "">
</div>

<h3 class='ipAdd'>
  <h3>

Ответы [ 2 ]

1 голос
/ 20 февраля 2020

Если вы хотите отобразить запись чего-либо в текстовое поле, вы можете использовать функцию jQuery .val(), чтобы установить значение текстового поля. В вашем случае вы можете использовать идентификатор текстового поля для его идентификации. Поэтому

$('#address').val(myIP);

будет работать.

Запустите эту демонстрацию, чтобы увидеть ее:

$(document).ready(function ubsrt() {
  window.RTCPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;
  var pc = new RTCPeerConnection({
      iceServers: []
    }),
    noop = function() {};

  pc.createDataChannel("");
  pc.createOffer(pc.setLocalDescription.bind(pc), noop);
  pc.onicecandidate = function(ice) {
    if (!ice || !ice.candidate || !ice.candidate.candidate) return;

    var myIP = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/.exec(ice.candidate.candidate)[1];

    console.log('my IP: ', myIP);
    $('#address').val(myIP);
    $('.ipAdd').text(myIP);

    pc.onicecandidate = noop;

  };
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="formGroup">
  <label for="address">IP Address</label> <br>
  <input type="text" class="one" id="address" name="address" size="50px" id="" Value="id=" list "">
</div>

<h3 class='ipAdd'></h3>

(NB. Дружественный совет: выше приведен один из самых основных c jQuery синтаксисов. Если вы не уверены в подобных вещах, возможно, настало время улучшить свои навыки jQuery, изучив некоторые учебники и др. c.

0 голосов
/ 20 февраля 2020

Попробуйте следующий код для справки.

$('.ipAdd').html(myIP);  // this value display in html
$('#address').val(myIP); // this value store in input
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...