Javascript ng click不执行任何操作,DOM会注意到一次单击
尝试设置一个简单的ng click事件,并阅读有关它的其他页面。似乎只要将它添加到$scope中,它就应该可以工作,但在我在下面页面中介绍的两个示例中,没有任何效果(preventDefault()除外)Javascript ng click不执行任何操作,DOM会注意到一次单击,javascript,angularjs,Javascript,Angularjs,尝试设置一个简单的ng click事件,并阅读有关它的其他页面。似乎只要将它添加到$scope中,它就应该可以工作,但在我在下面页面中介绍的两个示例中,没有任何效果(preventDefault()除外) ng点击测试 点击我 和控制器 var DBFScube = angular.module("DBFScube", ['ngSanitize']); DBFScube.controller("AppCtrl", function ($sce, $scope, $http, $filte
ng点击测试
点击我
和控制器
var DBFScube = angular.module("DBFScube", ['ngSanitize']);
DBFScube.controller("AppCtrl", function ($sce, $scope, $http, $filter){
var app = this;
//
//$http.get("http://localhost:3000").success(function(CubeSides){
// app.CubeSides = CubeSides;
//})
$http.get("http://localhost:3000").success(function(CubeSides){
$scope.sides=CubeSides;
console.log("Loading data");
})
app.getmenuname = function(side) {
if($scope.sides === undefined) {
console.log("Not loaded fside " + side );
} else {
console.log("Got menu pane " + $scope.sides);
var fside = $filter('filter')($scope.sides, function (d) {return d.side === side;})[0];
console.log("Sending: " + fside.menuname);
return fside.menuname;
}
}
$scope.alert = function(message) { alert(message); }
$scope.growpane = function (side) {
console.log("You pressed the button, like " + side);
}
app.showpane = function (side) {
console.log("Loading side: " + side);
if($scope.sides === undefined) {
console.log("Not loaded yet");
} else {
console.log("Got page " + $scope.sides);
var fside = $filter('filter')($scope.sides, function (d) {return d.side === side;})[0];
var culine = '<iframe src="' + fside.surl + '" height="700" width="700"></iframe>';
console.log(culine);
return $sce.trustAsHtml(culine);
}
}
})
var DBFScube=angular.module(“DBFScube”,“ngSanitize]”);
控制器(“AppCtrl”,函数($sce、$scope、$http、$filter){
var-app=这个;
//
//$http.get(“http://localhost:3000)。成功(功能(立方边){
//app.CubeSides=CubeSides;
//})
$http.get(“http://localhost:3000)。成功(功能(立方边){
$scope.sides=立方边;
控制台日志(“加载数据”);
})
app.getmenuname=函数(侧){
如果($scope.sides==未定义){
控制台日志(“未加载fside”+侧);
}否则{
log(“获取菜单窗格”+$scope.sides);
var fside=$filter('filter')($scope.sides,函数(d){return d.side===side;})[0];
日志(“发送:+fside.menuname”);
返回fside.menuname;
}
}
$scope.alert=函数(消息){alert(消息);}
$scope.growpane=函数(侧){
log(“您按下了按钮,如“+侧”);
}
app.showpane=功能(侧面){
控制台日志(“加载侧:+侧);
如果($scope.sides==未定义){
console.log(“尚未加载”);
}否则{
log(“获取页面”+$scope.sides);
var fside=$filter('filter')($scope.sides,函数(d){return d.side===side;})[0];
库林变种=“”;
主控台。原木(烹饪);
返回$sce.trustAsHtml(库林);
}
}
})
问题是您不应该在视图中写入$scope
。这适用于从控制器需要的所有内容,您永远不需要编写$scope,因为您在定义的控制器的范围内
你的问题在这里:
<button ng-click="$scope.alert('I am a little thing that needs to do somethign');">Click Me</button>
点击我
改为:
<button ng-click="alert('I am a little thing that needs to do somethign');">Click Me</button>
点击我
问题是您不应该在视图中写入$scope
。这适用于从控制器需要的所有内容,您永远不需要编写$scope,因为您在定义的控制器的范围内
你的问题在这里:
<button ng-click="$scope.alert('I am a little thing that needs to do somethign');">Click Me</button>
点击我
改为:
<button ng-click="alert('I am a little thing that needs to do somethign');">Click Me</button>
点击我
$scope在“ng-”属性中不是必需的。试一试
<button ng-click="alert('I am a little thing that needs to do somethign');">Click Me</button>
点击我
$scope在“ng-”属性中不是必需的。试一试
<button ng-click="alert('I am a little thing that needs to do somethign');">Click Me</button>
点击我
ng点击测试
ng点击测试
要添加到两个答案中,即不要在视图中使用$scope…我还建议更改该函数的名称。“超控警报有点不对劲。”我征服了杜布霍夫。vrghost试图保留内置javascript函数的原始名称。老实说,我只是把按钮放在那里,看看我是否可以让ng单击以任何形式工作,因为我在任何地方都没有收到任何错误消息,我想可能是某种方式与li或a有关。这只是第一个将被使用的函数,现在它确实工作得很好。要在两个答案中添加“不要在您的视图中使用$scope”…我还建议更改该函数的名称。“超控警报有点不对劲。”我征服了杜布霍夫。vrghost试图保留内置javascript函数的原始名称。老实说,我只是把按钮放在那里,看看我是否可以让ng单击以任何形式工作,因为我在任何地方都没有收到任何错误消息,我想可能是某种方式与li或a有关。这只是将要使用的第一个,现在它确实工作得很好。