Javascript 筛选特定价格范围之间的标记

Javascript 筛选特定价格范围之间的标记,javascript,google-maps,google-maps-markers,marker,Javascript,Google Maps,Google Maps Markers,Marker,我正在尝试做一个函数,过滤在某个价格范围内的所有标记,但是我无法使它工作。我用下面的代码试过了 我做错了什么 函数priceRange(){ var price1=document.getElementById('price1')。值; var price2=document.getElementById('price2')。值; 对于(i=0;iprice1&&marker.price

我正在尝试做一个函数,过滤在某个价格范围内的所有标记,但是我无法使它工作。我用下面的代码试过了

我做错了什么

函数priceRange(){
var price1=document.getElementById('price1')。值;
var price2=document.getElementById('price2')。值;
对于(i=0;iprice1&&marker.price
输入字段值是字符串,您需要将它们解析为数字,以便比较正常工作。根据您使用的数字类型,使用
parseInt(str,10)
parseFloat(str)
。在分析字符串之前,请先从字符串中删除千位分隔符:

var price1 = parseInt(document.getElementById('price1').value.replace(/\./g, ''), 10);
var price2 = parseInt(document.getElementById('price2').value.replace(/\./g, ''), 10);
以相同的方式分析标记价格(正如charlietfl指出的):

if(parseInt(marker.price.replace(/\./g')),10)>price1&&parseInt(marker.price.replace(/\./g')),10)

要使fiddle中的代码正常工作,您需要将Javascript代码放在头部,不带包装器,放在
load
事件内,但在其外部有
priceRange
函数,以便可以从按钮事件访问它。将按钮中的属性从
onlick
更改为
onclick

,对于marke也是如此r对象价格,也是字符串
if(parseInt(marker.price.replace(/\./g, ''), 10) > price1 && parseInt(marker.price.replace(/\./g, ''), 10) < price2){