我想根据表单验证禁用我的 jQuery 按钮。根据文档,使用以下语法的常规按钮相当容易:
<button ng-click="save(user)" ng-disabled="form.$invalid">Save</button>
但是,当更改为 jQuery UI 按钮时,它不再起作用。我假设 Angular 在 jQuery UI 和 AngularJS 之间没有真正的绑定,因此需要一个指令来执行以下操作:
$("button" ).button( "option", "disabled" );
是这种情况还是有其他选择?我正在尝试做的一个 jsFiddle 在这里:http: //jsfiddle.net/blakewell/vbMnN/。
我的代码如下所示:
看法
<div ng-app ng-controller="MyCtrl">
<form name="form" novalidate class="my-form">
Name: <input type="text" ng-model="user.name" required /><br/>
Email: <input type="text" ng-model="user.email" required/><br/>
<button ng-click="save(user)" ng-disabled="form.$invalid">Save</button>
</form>
</div>
控制器
function MyCtrl($scope) {
$scope.save = function (user) {
console.log(user.name);
};
$scope.user = {};
};
$(function () {
$("button").button();
});