AngularJS: Wie rufen Sie die Funktion auf "onsubmit" in der Steuerung als ng-submit

Bin ich bei der Entwicklung mobiler app in angularJS, ionic framework und cordova. Ich habe ein Szenario, in dem Formular Daten bin ich der übermittlung an die server und wenn die server reagieren, mich mit dem status als 200 bin ich mit der Navigation der Benutzer zu der Seite Bestätigung. Mein code ist:

<ion-view title="Fill the Form" ng-controller="formSubmit">
<ion-content class="padding-vertical" ng-repeat="htmlValue in HTML">
    <form name="fieldForm" id="{{htmlValue.Id}}" method="post" onsubmit="submitFormData($(this).serialize(), $(this).attr('id'))">
        <div class="bootstrap" ng-bind-html="htmlValue.Html | unsafe">

        </div>
        <div class="padding">
            <button  class="button button-block button-calm">
                Submit
            </button>
        </div>
    </form>

    <div class="clearfix"></div>
</ion-content>

Die Funktion die ich geschrieben habe, unter dem index.html Seite, bevor der Körper endet.

<script type="text/javascript">
    function submitFormData(serializedData,value){
        var data = serializedData;
        $.ajax({
            url: base_url+"put/putFormFilledRawData.php?id="+value,
            type: "POST",
            data: data,
            success: function(tableData){
                alert('success');
            }});
        return false;
    };
</script>

Sache ist, wenn Antwort eintrifft als 200 habe ich zum navigieren durch $Staat.die go () - Funktion und für diese Funktion muss aufgerufen werden, in der Steuerung. Für die, die ich habe versucht, ng-submit, die am Ort der onsubmit-aber zeigt mir immer error: submitFormData ist nicht eine Funktion. Wie es funktioniert im inneren controller front view forms-submit aufrufen?

  • Sie zu binden, müssen submitFormData Funktion mit $scope wie $scope.submitFormData = Funktion() {......}
  • Es ist eigentlich zu viel jQuery für diese zu arbeiten. Sie sollten sich mal über Controller und scope in angular, dies zu tun. Sie durfte nicht verwenden $.ajax aber $http-eckig-service, Sie durfte nicht verwenden $.attr und $.serialisieren Sie sollten jedoch eckig-Bindung statt.
  • Wie bekomme ich die Daten, die gefüllt in das Formular ein. Beachten Sie, dass Formular ist dynamisch, sodass die Daten können nicht erfasst werden, die in statischer Weise und geschickt, um post-Anfrage. was ist der Ersatz des $(this).die Serialisierung in angularJS?
InformationsquelleAutor Shaggie | 2015-06-09
Schreibe einen Kommentar