javascript - 无法使用 javascript 在隐藏字段中显示值?

标签 javascript php jquery asp.net google-maps-api-3

function show(a,b) {
    var origin = document.getElementById('Subadd').value;
    var destination = a.value;
    var service = new google.maps.DistanceMatrixService();

    service.getDistanceMatrix(
        {
          origins: [origin],
          destinations: [destination],
          travelMode: google.maps.TravelMode.DRIVING,
          unitSystem: google.maps.UnitSystem.METRIC,
          avoidHighways: false,
          avoidTolls: false
        }, calcD);
}

function calcD(response, status) {
    if (status != google.maps.DistanceMatrixStatus.OK) {
        alert('Error was: ' + status);
    } else {
        var origins = response.originAddresses;
        var destinations = response.destinationAddresses;
        for (var i = 0; i < origins.length; i++) {
          var results = response.rows[i].elements;
          for (var j = 0; j < results.length; j++) {
              c= results[j].distance.text;
              b.value=c;
          }
        }
    }
}

这里 a 和 b 是两个文本字段 id。从文本字段 1 onchange 开始,函数 show() 将起作用并在 CalcD() 函数中提醒 c 的值。但是我无法将 c 的值传递到 ID 为 b 的文本字段中。

最佳答案

这是因为 b 在函数 CalcD 中未定义。您必须将它传递给函数或使用一些方法直接调用它,例如 document.getElementById。 那么你的代码必须是这样的:

function show(a,b) {
    var origin = document.getElementById('Subadd').value;
    var destination = a.value;
    var service = new google.maps.DistanceMatrixService();

    service.getDistanceMatrix(
        {
          origins: [origin],
          destinations: [destination],
          travelMode: google.maps.TravelMode.DRIVING,
          unitSystem: google.maps.UnitSystem.METRIC,
          avoidHighways: false,
          avoidTolls: false
        }, calcD);
}

function calcD(response, status) {
    if (status != google.maps.DistanceMatrixStatus.OK) {
        alert('Error was: ' + status);
    } else {
        var origins = response.originAddresses;
        var destinations = response.destinationAddresses;
        for (var i = 0; i < origins.length; i++) {
          var results = response.rows[i].elements;
          for (var j = 0; j < results.length; j++) {
              c= results[j].distance.text;
              b = document.getElementById('id of b input');
              b.value=c;
          }
        }
    }
}

关于javascript - 无法使用 javascript 在隐藏字段中显示值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51074376/

相关文章:

javascript - 如果 .gif 在另一个 .gif 旁边,则隐藏它

php - "php_connect_nonb() failed: Operation now in progress (115)"在 PHP 中使用 TLS/SSL 加密的 FTP 连接 - 未加密的连接有效

php - 我的网站是一个视频广播网站。我是否必须在 ffmpeg 主机上托管,还是可以使用普通主机?

javascript - 使用 jquery conextmenu 的参数调用函数

javascript - 来自 nodejs 的 Hive 连接器

javascript - 命名空间 Javascript 中的递归函数

PHP/MYSQL 问题 - 查询搜索随机失败

javascript - 如何将值从 jQuery-AJAX 函数发送到 PHP 文件并访问 PHP 文件中的这些值?

jquery - 在阅读 O'Reillys jQuery Cookbook 时遇到 andSelf() 问题

php - 将动态 html 放在页面上最可接受的方式