javascript - Enable/disable button if value is different than select by default -
i need toggle button state between enabled/disabled if change default value of select element. take html example:
<select ng-change="statusbtn(btnupdfee, updfee)" ng-options="wt.id wt.name wt in wtax" ng-model="updfee" class="ng-pristine ng-valid" > <option value="0" selected="selected">cm-534be5d66aea3</option> <option value="1" selected="selected">cm-534be5d681a02</option> <option value="2">cm-534be5d68316e</option> </select> <button disabled="" ng-click="showcommentmodal('updatefee')" class="btn btn-success" id="btnupdfee"><i class="icon-ok"></i></button> and code wrote it's not working:
$scope.statusbtn = function(btnid, curvalue) { if (curvalue != $scope.updfee) { $("#" + btnid).removeattr("disabled"); } else { $("#" + btnid).attr("disabled"); } } what miss?
edit
i made changes , code this:
<button class="btn btn-success" ng-click="showcommentmodal('updatefee')" ng-disabled="!btnstatus"><i class="icon-ok"></i></button> $scope.$watch("updfee", function(newvalue, oldvalue) { if (newvalue === oldvalue) { $scope.btnstatus = false; } else { $scope.btnstatus = true; } console.log($scope.btnstatus, newvalue, oldvalue); }); and output:
first page load (no changes): false undefined undefined first page load (no changes): true 2 undefined changing select: true 1 2 changing select again: true 3 1 but still not working, i'm doing wrong?
don't use jquery set properties in angular driven application! use ng-disabled set flag. on change of select - check need , set flag:
<button ng-disabled="isnotdefault" ng-click="showcommentmodal('updatefee')" class="btn btn-success" id="btnupdfee"><i class="icon-ok"></i></button> $scope.statusbtn = function(btnid, curvalue) { $scope.isnotdefault = curvalue != $scope.updfee }
Comments
Post a Comment