AngularJS提交表格

时间:2015-02-06 05:04:48

标签: javascript jquery angularjs forms

我尝试使用AngularJS提交表单而不使用$ http。我通过Javascript检查表单,但不确定检查完成后如何提交。示例代码如下所示:

AngularJS

 app.directive('checkLoggedinSubmit', ['account_id', 'session', 'LoginModal',
    function(account_id, session, LoginModal) {
        return {
            restrict : 'A',
            link : function(scope, element, attrs) {

                element.bind('submit', function(e) {
                    e.preventDefault();             

                    //If not logged in, show logged in, otherwise subit
                    if (!account_id && !session.read('account_id')) {
                        LoginModal.show();
                    } else {
                        scope.$eval(attrs.checkLoggedinSubmit);
                        scope.$apply();
                        //Tried To use JQuery
                        //$(e.currentTarget).submit();
                    }

                });

            }
        };

}]);

HTML表单

<form role="form" enctype="multipart/form-data" method="post" action="/file/submit" class="well" style="padding: 0px 20px 20px;" check-loggedin-submit >
    <div class="form-group">
        <input type="file" name="my_file" />
    </div>

    <div class="form-group">
        <input type="submit" class="btn btn-success"  />
    </div>

</form>

我试图让JQuery提交表单,但却犯了错误。现在有人如何解决这个问题?

2 个答案:

答案 0 :(得分:2)

以角度提交表单的更好方法是使用&#34; ng-sbmit&#34;

你可以使用像ng-submit =&#34; functionHandlingSubmitTask()&#34;

您可以查看指向

的链接

http://learnwebtutorials.com/angularjs-tutorial-submitting-form-ng-submit

答案 1 :(得分:0)

试一试:

<input type="submit" data-ng-click="save(input) class="btn btn-success"  />

save是JQuery方法名称,输入是params。