Given the following:
<html ng-app>
...
<script>
function Main($scope){
$scope.checked = function() {
alert("This will never show!");
};
}
</script>
<body>
<div data-role="page" ng-controller="Main">
<div data-role="header">
<h1>Sample</h1>
</div>
<div data-role="content">
<label for="mybox">Click here!</label>
<input id="mybox" type="checkbox" ng-model="boxval" ng-change="checked()">
</div>
</div>
</body>
</html>
Checking or unchecking the box does not trigger the method call. By removing the <label>
tag it will work fine.
I know JQuery Mobile is doing some fancy manipulation of the underlying <input type="checkbox">
tag, but is there a simple way to trick it to activate the ng-change?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…