0
我已經構建了一個簡單的離子2形式,提交罰款。但我希望將查找位置函數的結果添加到表單字段中。以前我用document.getElementByID(「lat」)。value = position.coords.latitude來完成這個jQuery表單。在我的代碼,我得到我的拉特和渴望變量,但現在我想弄清楚如何採取結果並將其輸入到data.lat和data.lng離子輸入將函數的結果添加到離子2形式字段
HTML
<ion-content padding class="formstuff">
<ion-list>
<ion-item>
<ion-input type="text" name="lat" placeholder="Latitude" [(ngModel)]="data.lat"></ion-input>
</ion-item>
<ion-item>
<ion-input type="text" name="lng" placeholder="Longitude" [(ngModel)]="data.lng"></ion-input>
</ion-item>
<ion-item>
<ion-input type="text" name="message" placeholder="message" [(ngModel)]="data.message"></ion-input>
</ion-item>
<ion-item>
<ion-input type="text" name="username" placeholder="Username" [(ngModel)]="data.username"></ion-input>
</ion-item>
<button (click)="getLocation()" class="button button-full button-calm">Get Location</button>
<button block (click)="submit()">Submit to server</button>
</ion-list>
</ion-content>
JS
import {Page} from 'ionic/ionic';
import {Inject} from 'angular2/core';
import {Http} from 'angular2/http';
import 'rxjs/add/operator/map';
@Page({
templateUrl: 'build/pages/formstuff/formstuff.html',
})
export class FormstuffPage {
constructor(@Inject(Http) http: Http) {
this.data = {};
this.data.message = '';
this.data.lat = '';
this.data.lng = '';
this.data.response = '';
this.http = http;
}
submit() {
let link = 'http://api.php';
let data = JSON.stringify({message: this.data.message, lat: this.data.lat, lng: this.data.lng});
this.http.post(link, data)
.subscribe(data => {
this.data.response = data._body;
}, error => {
console.log("error");
});
}
getLocation() {
let options = {timeout: 2000, enableHighAccuracy: false};
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(geoLatlng, geoErrors, options);
} else {
console.log "conection error"
}
}
function geoLatlng(position) {
let latitude = position.coords.latitude;
let longitude = position.coords.longitude;
console.log ('cordinates'latitude,longitude);
}
function geoErrors(error) {
}
}