简体   繁体   中英

Angular submission form not working

I'm trying to submit this form, but nothing is happening. The idea is to add a new Marker to google maps. I have an array where I put all the markers I create. I'm using ng-submit, and also a button type submit, but when pressing the button nothing happens on the browser.

HTML :

    <form ng-submit="agregarMarcador()">
    <label>Nombre de la ubicacion</label>
    <input class="form-control-md-12" type="text" ng-model="nombreMarcador" name="nombreMarcador">

    <label>Latitud</label>
    <input class="form-control-md-12" type="text" ng-model="latitudMarcador" name="latitudMarcador">

    <label>Longitud</label>
    <input class="form-control-md-12" type="text" ng-model="longitudMarcador" name="longitudMarcador">

    <label>Arrastrable</label>
    <select class="form-control-md-12" ng-model="marcadorArrastrable" name="marcadorArrastrable">
        <option value="si">Si</option>
        <option value="no">No</option>
    </select>
    <button type="submit" class="btn btn-primary">Save</button>
</form>

JS :

agregarMarcador(){

console.log("Agregando marcador");

if(this.marcadorArrastrable == "si"){

        var esArrastrable = true;

}else{

        var esArrastrable = false;
}

var nuevoMarcador = {

    nombre : this.nombreMarcador,
    lati: parseFloat(this.latitudMarcador),
    lngi: parseFloat(this.longitudMarcador),
    drag : esArrastrable 
}

this.markers.push(nuevoMarcador);

}

With the following code, your App should be works!

View

<div ng-app="MarcadorApp" ng-controller="MarcadorCtrl">
  <form ng-submit="agregarMarcador()">
    <!-- Nombre de la ubicación -->
    <label>Nombre de la ubicación</label>
    <input class="form-control-md-12" type="text" ng-model="nombreMarcador" name="nombreMarcador">
        <!-- Latitud -->
    <label>Latitud</label>
    <input class="form-control-md-12" type="text" ng-model="latitudMarcador" name="latitudMarcador">
    <!-- Longitud -->
    <label>Longitud</label>
    <input class="form-control-md-12" type="text" ng-model="longitudMarcador" name="longitudMarcador">
    <!-- Arrastrable -->
    <label>Arrastrable</label>
    <select class="form-control-md-12" ng-model="marcadorArrastrable" name="marcadorArrastrable">
        <option value="true">Si</option>
        <option value="false">No</option>
    </select>
    <!-- Guardar Marcador -->
    <button type="submit" class="btn btn-primary">Save</button>
  </form>
</div>

Controller

'use strict';
var app = angular.module('MarcadorApp', []);
app.controller('MarcadorCtrl', ['$scope', function($scope) {
    $scope.agregarMarcador = function() {
        var nuevoMarcador = {
            nombre: this.nombreMarcador,
            lati: parseFloat(this.latitudMarcador),
            lngi: parseFloat(this.longitudMarcador),
            drag: this.marcadorArrastrable
        };
        console.log(nuevoMarcador);
    };
}]);

Keep Rocking!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM