2016-07-26 42 views
0

這裏是我的角度功能,當你在必填字段中雙擊,改變它的值,然後按回車基本上更新數據:如何在Firefox中使用Angularjs中的事件,因爲它說事件未定義?

$scope.contentEdit = function(data, event) { 
    console.log("event", event); //this function triggers when the user edit student's data from the table and updates new data to local storage. 
    for (var i = 0; i < $scope.students.length; i++) { 
     if ($scope.students[i].studentName == data) { 
      $scope.students[i].studentName = event.target.innerText; 
     } else if ($scope.students[i].Marks == data) { 
      $scope.students[i].Marks = parseInt(event.target.innerText); 
      $scope.students[i].pass = ($scope.students[i].Marks > 65) ? true : false; 
     } 
    } 
    localStorage.setItem('studentsList', JSON.stringify($scope.students)); 
    event.target.contentEditable = event.target.contentEditable == "false" ? "true" : "false"; 
}; 

我已經從我的HTML通過$事件作爲contentEdit(student.studentName,$事件),但它仍然不起作用。 每當我雙擊字段,然後它在控制檯上成功地記錄雙擊事件,但一旦我按Enter鍵,它就會拋出並且錯誤的事件是未定義的。

+0

你可以發佈你的** ** HTML? – developer033

+0

你能提供jsfiddle嗎? –

+0

@AnikIslamAbhi嗨Anik,謝謝你的迴應,我知道它是固定的,實際上這個函數被另一個函數調用,我忘了從該函數傳遞事件。 –

回答

0

你使用ng-dblclick指令嗎?如果是,我想你有一個語法錯誤。

var app = angular.module('myApp', []); 
 
app.controller('myCtrl', function($scope) { 
 
    $scope.contentEdit = function(data, event) { 
 
     console.log(event); 
 
    }; 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="myApp" ng-controller="myCtrl"> 
 
    <div ng-dblclick="contentEdit(1, $event)">dblclick me to see the console</div> 
 
</div>

相關問題