编辑:抱歉由于某些原因PHP部分没有正确显示
我试图从PHP/HTML在javascript中使用getElementByID().value
.
这是PHP部分:$lat
和$long
是十进制数字(我试图用点代替逗号没有结果
echo '
<ul id="cordinates">
<li id="lat" value="',$lat,'"></li>
<li id="lon" value="',$long,'"></li>
</ul>';
JS部分:
var lat = (document.getElementById('lat').value);
var lon = (document.getElementById('lon').value);
console.log("LAT:: "+lat);
console.log("LON:: "+lon);
网页输出示例:53.9933371,-6.3912622和控制台LAT:: 53 LON:: -6
我做错了什么?我怎么能得到浮点值在JS?
UPDATE:
元素的属性值
请使用data-*属性来存储坐标:
<ul id="cordinates">
<li id="lat" data-value="52.0193">52.0193</li>
<li id="lon" data-value="23.2413">23.2413</li>
</ul>
并将javascript修改为:
var lat = (parseFloat(document.getElementById('lat').dataset.value));
var lon = (parseFloat(document.getElementById('lon').dataset.value));
我真的不懂PHP,但我认为你应该把它改成这样:
echo '
<ul id="cordinates">
<li id="lat" data-value="',$lat,'">',$lat,'</li>
<li id="lon" data-value="',$long,'">',$lon,'</li>
</ul>';
原始回答:
使用parseFloat() - Reference
var lat = (parseFloat(document.getElementById('lat').value));
var lon = (parseFloat(document.getElementById('lon').value));
console.log("LAT:: "+lat);
console.log("LON:: "+lon);