0

私は住所に関連するアプリに取り組んでいます。

次のようにハードコードされたアドレスで関数をテストしました。

var address = "India Gate , Rajpath, New Delhi, Delhi"; 

正常に動作しています。

しかし今、その関数を使用して、フォームを介してユーザーから adderss を取得し、address=form.address.value. 次にalert(address)、右address(文字列)を示しています。しかし、関数はそれで動作しませんでした (ハードコードされたのと同じアドレスに対して)。

基本的にGoogle Maps APIを使用しています。それでform.name.value、私が知っておくべき特別なことはありますか?

geocoder = new google.maps.Geocoder();
var address = form.address.value;
alert(address);
//var address = "India Gate , Rajpath, New Delhi, Delhi";

geocoder.geocode({
    'address': address
}, function(results, status) {

    if(status == google.maps.GeocoderStatus.OK) {
        alert("hi");
        var latitude = results[0].geometry.location.lat();
        var longitude = results[0].geometry.location.lng();
        addpin(latitude, longitude);
    }
});
<form>
    Your Name: <input type="text" name="name"/><br/>
    Your Email:<input type="text" name="email"/><br/>
    Company name:<input type="text" name="company"/><br/>
    Street address:<input type="text" name="address"/><br/>
    <input type="submit" value="submit" onclick="getlatlong(this.form)">
</form>
4

1 に答える 1

0

form.name要素のname属性に反映されますform

<form name="form1" />

console.assert(form.name == "form1");

あなたはあなたがform.elements.name望むものになるだろうを使うことができます。ただし、この場合、length名前付き要素に到達することはできません。これは、form.elementsコレクションの長さだからです。

于 2012-07-04T20:19:17.237 に答える