PHP + JS getElementById().值返回int而不是float
PHP+JS getElementById().value return int instead of float
编辑:抱歉由于某些原因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);
相关文章:
- 按从高到低对多个int变量进行排序
- 如何在Javascript中读取unsigned int
- 如何将Date字段设置为等于另一个Date+Int值,该值表示月份值
- 从int值来看,Javascript日期不正确
- JavaScript警报适用于int,但不适用于string
- 如何从二进制int中获取百分比,每个位表示x%
- Chart.js:将对象而不是int值作为数据传递
- float's未返回到移动视图结束后的位置
- 如何在javascript中将Integer转换为int
- 为什么不'将字符串转换为int不正确(parseInt)
- Angular 2:如何在 GET 和 POST 请求中设置 double、float、int 和布尔类型参数
- 在Javascript中将int 12345转换为float 1.2345
- 只允许使用javascript和mootools在字段中输入int和float
- 在jquery中检测数字是INT还是FLOAT
- Regex仅为货币标识float或int
- 如果为float,则显示小数点2位;如果为int,则显示十进制0位
- 生成指定范围内的随机数-各种情况(int, float, inclusive, exclusive)
- 在jQuery中将字符串转换为int/float
- JavaScript中的parseFloat和float int有多快?
- PHP + JS getElementById().值返回int而不是float