在 php echo 语句中调用的 ng-click 函数不起作用
ng-click function called within php echo statement not working
我正在尝试对从 MySQL 数据库中提取的图像执行 ng-click,但我似乎无法在控制台中显示测试日志消息。
这是 ng-click 所在部分的一部分。 ng-click 在第一个 echo 语句中:
<div id="screenings" ng-controller="screeningsController">
<?php
$db = mysqli_connect("localhost", "root", "", "database");
$sql = "SELECT * FROM screenings ORDER BY id DESC";
$result = mysqli_query($db, $sql);
while ($row = mysqli_fetch_array($result)){
echo "<div id='img_div' ng-click='popup()'>";
echo "<img id='img_screenings' class='modal_img' src='images/".$row['image']."' >";
echo "<p id='movie_p' align='center'>" .$row['movie']."</p>";
echo "<p id='screenings_p' align='center'>" .$row['venue']."</p>";
echo "<p id='location_p' align='center'>" .$row['location']."</p>";
echo "<p id='date_p' align='center'>".date('F j, Y',strtotime($row['date']))."</p>";
echo "</div>";
}
?>
</div>
这是 app.js 中 ng-controller 的代码。我试图让一条简单的日志消息出现在控制台中,但我没有看到它:
myApp.controller('screeningsController', ['$scope', '$log', function($scope, $log){
$scope.popup = function(){
$scope.$log = $log;
$scope.message = 'Hello World!';
};
}]);
好吧,看来您实际上并没有注销任何东西。您只是将 $log
服务分配给 $scope
。尝试将 popup
函数更改为以下内容:
$scope.popup = function () {
// assign a message to the $scope
$scope.message = 'Hello World!';
// use the $log service to output the message in a console
$log.log($scope.message);
};
我正在尝试对从 MySQL 数据库中提取的图像执行 ng-click,但我似乎无法在控制台中显示测试日志消息。
这是 ng-click 所在部分的一部分。 ng-click 在第一个 echo 语句中:
<div id="screenings" ng-controller="screeningsController">
<?php
$db = mysqli_connect("localhost", "root", "", "database");
$sql = "SELECT * FROM screenings ORDER BY id DESC";
$result = mysqli_query($db, $sql);
while ($row = mysqli_fetch_array($result)){
echo "<div id='img_div' ng-click='popup()'>";
echo "<img id='img_screenings' class='modal_img' src='images/".$row['image']."' >";
echo "<p id='movie_p' align='center'>" .$row['movie']."</p>";
echo "<p id='screenings_p' align='center'>" .$row['venue']."</p>";
echo "<p id='location_p' align='center'>" .$row['location']."</p>";
echo "<p id='date_p' align='center'>".date('F j, Y',strtotime($row['date']))."</p>";
echo "</div>";
}
?>
</div>
这是 app.js 中 ng-controller 的代码。我试图让一条简单的日志消息出现在控制台中,但我没有看到它:
myApp.controller('screeningsController', ['$scope', '$log', function($scope, $log){
$scope.popup = function(){
$scope.$log = $log;
$scope.message = 'Hello World!';
};
}]);
好吧,看来您实际上并没有注销任何东西。您只是将 $log
服务分配给 $scope
。尝试将 popup
函数更改为以下内容:
$scope.popup = function () {
// assign a message to the $scope
$scope.message = 'Hello World!';
// use the $log service to output the message in a console
$log.log($scope.message);
};