首页 > 解决方案 > 如何使用 Mapbox API 中的 Jquery 从活动的 li > a 中获取值?

问题描述

我正在尝试从前向地理编码器中获取值,该值在有人打字时预测地址,并将该值发送到 ID 为“pickup”的表单。我似乎无法从当有人开始输入输入时激活的 mapbox api 中捕获 li > a 。

这是 Mapbox 地址搜索的截图:

在此处输入图像描述

我正在尝试的代码片段。我也尝试了很多变体:

$("ul.suggestions").find("li.active").click(function() {
    pickupLoc = $(this).attr("value");
    $("#pickup")[0].value= pickupLoc; 
});

谢谢!

标签: javascriptjqueryapihtml-listsmapbox

解决方案


li元素没有value属性。试试吧。text()

改变

pickupLoc = $(this).attr("value");

pickupLoc = $(this).text();

演示:

$("ul.suggestions").find("li.active").click(function(){
  var pickupLoc = $(this).text();
  console.log(pickupLoc);
});
.active{
  color: green;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul class="suggestions">
  <li class="active">
    <a>
      <strong>ABC</strong>
      Sample Text 1
    </a>
  </li>
  <li>
    <a>
      <strong>SDF</strong>
      Sample Text 2
    </a>
  </li>
</ul>


推荐阅读