我在jQuery函数中调用$(‘.submit’)表单。该表单的HTML包含一个angular ng-submit绑定。我希望jQuery调用支持angular ng-submit。它目前使用的是默认的提交功能(包括页面刷新)。
如何强制jQuery使用ng-submit提供的函数而不是默认的提交函数?下面是相关的代码摘录。
如果我能提供任何有用的信息,请告诉我。
$scope.do_submit = function(){
// some logic here
};
$("#input").autocomplete({
// some logic
select: function(event, ui){
$(event.target).val(ui.item.value);
//this calls the default submit, not the ng-submit for the form.
$(event.target.form).submit();
}
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.7/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<form id='text_form' ng-submit="do_submit()"><input id='input' ng-model="user_answer" autofocus></form>
发布于 2015-04-04 09:01:21
可以在标记中添加一个隐藏的提交按钮:<input type="submit" class="submit" style="display: none" />
然后,不是直接提交表单,而是让jQuery向submit按钮发送一个单击:$('.submit', $(event.target.form)).click();
通过这样做,Angular将接管并遵守您的ng-submit属性。
https://stackoverflow.com/questions/28574717
复制相似问题