簡體   English   中英

初始化后更改輸入字段的占位符文本

[英]Change the placeholder text of an input field after initializing

我正在使用在地圖上生成的輸入字段。 我想將輸入字段的占位符文本從“搜索”更改為“搜索位置”。

輸入字段沒有類或 id,但其父字段有。 我嘗試使用下面的 jQuery 初始化后進行更改,但無濟於事。

$('.leaflet-control-mapbox-geocoder-form input').attr("placeholder","Search for Location");

下面是輸入字段可見的小提琴。 我很高興繼續使用 jQuery 或通過純 JS。

http://jsfiddle.net/teraw600/

它在您的示例中不起作用,因為未包含 jQuery。

如果您不想使用 jQuery,則可以使用以下命令:

更新示例

document.querySelector('.leaflet-control-mapbox-geocoder-form input').placeholder = "Search for Location";

您還可以為ready事件添加一個事件偵聽器,然后在回調中更改placeholder屬性。 同樣,不需要 jQuery:

示例在這里

L.mapbox.accessToken = 'pk.eyJ1Ijoic3BheWNlIiwiYSI6IlNIMnRfZ2MifQ.SreIfdJljzEj2M033UubsA';
L.mapbox.map('map', 'examples.h186knp8')
    .addControl(L.mapbox.geocoderControl(
        'mapbox.places', {
            keepOpen: true
        }
    ))
    .addEventListener('ready', function () {
        document.querySelector('.leaflet-control-mapbox-geocoder-form input').placeholder = "Search for Location";
    }
);

更好的方法是在初始化時向地理編碼器對象添加一個鍵值對(占位符:您的文本):

  var geocoder = new MapboxGeocoder({
    accessToken: mapboxgl.accessToken,
    mapboxgl: mapboxgl,
    placeholder: 'Search for Location'
  });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM