角度提交表单不起作用

时间:2017-07-03 00:23:07

标签: javascript angularjs forms

我正在尝试提交此表单,但一切都没有发生。我们的想法是为谷歌地图添加一个新的标记。我有一个数组,我放置了我创建的所有标记。我正在使用ng-submit,还有一个按钮类型提交,但是当按下按钮时,浏览器上没有任何反应。

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);

}

1 个答案:

答案 0 :(得分:0)

使用以下代码,您的应用程序应该有效!

查看

<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>

<强>控制器

'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);
    };
}]);

继续摇滚!