我知道我可以限制Google Places API仅返回使用的地址
选项types: ['address']
。我想知道是否有可能强迫用户提供街道地址,包括街道号码,即#34; Drottninggatan 100"而不只是" Drottninggatan"?
如果我不能强迫这种行为,那么验证用户是否已选择类似" Drottninggatan 100"而不只是" Drottninggatan"?
(顺便说一句,我正在使用Javascript API和AngularJS)
答案 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)
为什么不在地址字符串的开头检查号码?
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;