使用Google商家信息自动填充强制街道地址?

时间:2015-07-01 20:10:18

标签: javascript angularjs google-maps

我知道我可以限制Google Places API仅返回使用的地址 选项types: ['address']。我想知道是否有可能强迫用户提供街道地址,包括街道号码,即#34; Drottninggatan 100"而不只是" Drottninggatan"?

如果我不能强迫这种行为,那么验证用户是否已选择类似" Drottninggatan 100"而不只是" Drottninggatan"?

(顺便说一句,我正在使用Javascript API和AngularJS)

2 个答案:

答案 0 :(得分:0)

嗯..你可以使用带有正则表达式的javascript匹配函数来检查输入的格式......以下示例将检查地址是否至少包含一个数字。

var resultBox = document.getElementById("ifValid");

function textboxChanged(){
    var address=document.getElementById("address").value;
    
    
    if (address.match(/[0-9]/i)==null){
        resultBox.style.color="red";
        resultBox.innerHTML="not valid";
    } else {
        resultBox.style.color="green";
        resultBox.innerHTML="valid";
    }

}
<input type="text" id="address" placeholder="enter an address" onkeyup="textboxChanged()">
    
<p id="ifValid" style="color: red;">not valid</p>

答案 1 :(得分:-1)

为什么不在地址字符串的开头检查号码?

&#13;
&#13;
var resultBox = document.getElementById("ifValid");

function textboxChanged() {
  var address = document.getElementById("address").value;

  var parts = address.split(' ');
  if (parts.length > 1 && !isNaN(parts[0]) && parts[1].length > 0) {
    resultBox.style.color = "green";
    resultBox.innerHTML = "valid";
  } else {
    resultBox.style.color = "red";
    resultBox.innerHTML = "invalid";
  }

}
&#13;
<input type="text" id="address" placeholder="enter an address" onkeyup="textboxChanged()">
<p id="ifValid" style="color: red;">not valid</p>
&#13;
&#13;
&#13;

JS Bin demo: https://jsbin.com/vayanu