国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

使用來(lái)自API的值觸發(fā)變更。
P粉633309801
P粉633309801 2023-07-30 15:33:31
0
1
561
<p>我正在處理一個(gè)項(xiàng)目,在這個(gè)項(xiàng)目中,我需要獲取當(dāng)前的坐標(biāo),並將它們保存為變量,然後將這些參數(shù)發(fā)送到GeoNames,以獲取國(guó)家代碼。這個(gè)國(guó)家代碼將用於觸發(fā)一個(gè)更改事件,作用於一個(gè)下拉式選單(之前已經(jīng)填充了國(guó)家代碼作為值),該下拉式選單將顯示一個(gè)國(guó)家的邊界(使用geoJSON)。如果我實(shí)際上在選單上點(diǎn)擊任何一個(gè)國(guó)家,它都可以正常工作,但是當(dāng)我從GeoNames獲取到程式碼後,我無(wú)法觸發(fā)更改事件。每當(dāng)我在獲取到國(guó)家代碼後添加這行代碼時(shí),問(wèn)題就出現(xiàn)了。 </p> <pre class="brush:php;toolbar:false;">$('#countrySelect').val('currCode').change();</pre> <p>除了不起作用之外,我還收到了這個(gè)錯(cuò)誤:Map.js:291 Uncaught Error: Bounds are not valid.</p><p>有人知道我做錯(cuò)了什麼嗎? (我正在使用php進(jìn)行解碼,並且我從leaflet獲取地圖)。 </p><p>以下是詳細(xì)資料:</p><p>這個(gè)程式碼用來(lái)填滿下拉式選單:</p><p><br /></p> ; <pre class="brush:php;toolbar:false;">$.ajax({ url: "libs/php/geoJson.php", type: "POST", dataType: "json", success: function(result) { //console.log(result); for (var i=0; i<result.data.border.features.length; i ) { $('#countrySelect').append($('<option>', { value: result.data.border.features[i].properties.iso_a3, text: result.data.border.features[i].properties.name, })); } } });</pre> <p>當(dāng)手動(dòng)選擇國(guó)家時(shí),這將創(chuàng)建邊界(並且它可以正常工作)。 </p> <pre class="brush:php;toolbar:false;">var border; $('#countrySelect').on("change", function() { let name = $('#countrySelect').val(); //get show border $.ajax({ url: "libs/php/geoJson.php", type: 'POST', dataType: 'json', success: function(result) { const filterData = result.data.border.features.filter((a) => (a.properties.iso_a3 === name)); border = L.geoJSON(filterData[0]).addTo(map); map.fitBounds(border.getBounds()); }, }); });</pre> <p>這部分程式碼嘗試獲取座標(biāo)(似乎可以正常工作),將它們傳遞給GeoNames以獲取國(guó)家代碼(似乎也可以正常工作),然後觸發(fā)上述的更改事件(但這部分不起作用)。</p>
navigator.geolocation.getCurrentPosition(成功);

函數(shù)成功(位置){
讓 lat = 位置.座標(biāo).緯度;
令 lng = 位置.座標(biāo).經(jīng)度;
讓 coords = {"lat": lat, "lng": lng};

 //帶有座標(biāo)的AJAX請(qǐng)求到geoNames以取得國(guó)家/地區(qū)代碼

$.ajax({
  url: "libs/php/getCurrentCode.php",
  類型:“帖子”,
  資料類型:“json”,
  數(shù)據(jù):座標(biāo),

  成功:函數(shù)(結(jié)果){
    console.log(JSON.stringify(結(jié)果));
    if (result.status.name == "ok") {
      $(結(jié)果["數(shù)據(jù)"]["國(guó)家代碼"]);
      讓 currCode = 結(jié)果.data;
      控制臺(tái).log(currCode);

  //用檢索到的程式碼觸發(fā)更改

  $('#countrySelect').val('currCode').change();
            };
    };
  });
};</pre>
<p>我的 php:</p>
ini_set('display_errors', 'On');
    錯(cuò)誤報(bào)告(E_ALL);

    $executionStartTime = microtime(true);

    $url='http://api.geonames.org/countryCodeJSON?&lat=' 。 $_REQUEST['緯度'] 。 '&lng=' 。 $_REQUEST['lng'] 。 '&用戶名=&樣式=完整';

    $ch=curl_init();
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_URL,$url);

    $結(jié)果=curl_exec($ch);

    捲曲_關(guān)閉($ch);

    $decode = json_decode($結(jié)果,true);

    $輸出['狀態(tài)']['代碼'] = '200';
    $output['status']['name'] = 'ok';
    $output['狀態(tài)']['描述'] = '成功';
    $output['status']['returnedIn'] = intval((microtime(true) - $executionStartTime) * 1000) 。 ' 多發(fā)性硬化癥';
    $output['data'] = $decode['countryCode'];
    //var_dump($解碼);

    header('內(nèi)容類型:application/json; charset=UTF-8');

    echo json_encode($output);</pre>
<p><br />></p>            
P粉633309801
P粉633309801

全部回覆(1)
P粉010967136
$('#countrySelect').val('currCode').change();

這將把值設(shè)為字面字串currCode。您要將其設(shè)定為變數(shù)currCode中的值。為了做到這一點(diǎn),請(qǐng)刪除引號(hào):

$('#countrySelect').val(currCode).change();
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板