0

我需要如何编写才能在两个地方创建元素?

这是我的代码。

我尝试过使用document.getElementsByNamedocument.getElementsByClassName但它们都不起作用。

HTML

<p style="display:block;" class="coords"></p>

Javascript

function getLocation() {
    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(showPosition);
    } else {
        x.innerHTML = "Geolocation is not supported by this browser.";
    }
}

function showPosition(position, coords)
{
    var places = document.getElementsByClassName(coords);
    for (var i = 0; i < places.length; i++)
    {
        places[i].innerHTML = "<input type='text' name='lat' id='lat' value='" + position.coords.latitude + "'>" +
            "<input type='text' name='lon' id='lon' value='" + position.coords.longitude + "'>";
    }
}
4

2 回答 2

2

调用后,getElementsByClassName您必须使用循环来更新它们中的每一个。

function showPosition(position) {
    var places = document.getElementsByClassName("coords");
    for (var i = 0; i < places.length; i++) {
        places[i].innerHTML="<input type='text' name='lat' id='lat' value='" + position.coords.latitude + "'>" +
                            "<input type='text' name='lon' id='lon' value='" + position.coords.longitude + "'>";
    }
}
于 2013-07-11T16:28:09.387 回答
0

您可能想使用

document.getElementsByClassName或者document.getElementsByName

开头没有大写字母

于 2013-07-11T16:27:56.383 回答