我正在嘗試使用AngularJS提交表單而不使用$ http。我通過Javascript檢查表單,但不知道如何在檢查完成後提交。示例代碼如下所示:AngularJS提交表單提交
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的提交表單,但扔了錯誤。任何人現在如何解決這個問題?
我認爲最簡單的方法是將'e.preventDefault();'調用移到你的'if'語句中,所以它只會在需要的時候被調用。 – 2015-02-06 05:09:57