Uncaught ReferenceError: myFunction is not defined at HTMLInputElement.onkeyup
Uncaught ReferenceError: myFunction is not defined at HTMLInputElement.onkeyup
基本相同
https://www.w3schools.com/tags/tryit.asp?filename=tryhtml5_ev_onkeyup
但由于某种原因我收到此错误。
HTML
<nb-card>
<nb-card-header>
Enter your name:
</nb-card-header>
<nb-card-body>
<input type="text" id="fname" onkeyup="myFunction()">
</nb-card-body>
<script>
function myFunction() {
var x = document.getElementById("fname");
x.value = x.value.toUpperCase();
}
</script>
</nb-card>
没有星云库的同样错误:
HTML
<html>
<body>
Enter your name:
<input type="text" id="fname" onkeyup="myFunction()">
<script>
function myFunction() {
var x = document.getElementById("fname");
x.value = x.value.toUpperCase();
}
</script>
</body>
</html>
有谁知道为什么?谢谢。
我已经尝试了很多其他的堆栈溢出解决方案,但它们都不起作用。我希望不要使用 JQuery。这应该有效,但没有。我按照其他 W3 School 示例进行操作并得到相同的错误。
您的代码在这里似乎工作正常。有什么问题?
<nb-card>
<nb-card-header>
Enter your name:
</nb-card-header>
<nb-card-body>
<input type="text" id="fname" onkeyup="myFunction()">
</nb-card-body>
<script>
function myFunction() {
var x = document.getElementById("fname");
x.value = x.value.toUpperCase();
}
</script>
</nb-card>
这不是 AngularJS 中的编码方式。利用平台的 baked-in 功能 - 就像使用 ng-click, ng-model and ng-keyup
在这种情况下,我认为解决方案就像使用 CSS class 强制大写一样简单,但我仍然希望这对您有所帮助。
angular.module('myApp', [])
.controller('myCtrl', ['$scope', '$http', function($scope, $http) {
$scope.fname = "";
$scope.myFunction = function() {
console.log($scope.fname)
}
}]);
.ucase {
text-transform: uppercase;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.5/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">
<nb-card>
<nb-card-header>
Enter your name:
</nb-card-header>
<nb-card-body>
<input type="text" ng-model="fname" class='ucase' ng-keyup="myFunction()">
</nb-card-body>
</nb-card>
</div>
基本相同 https://www.w3schools.com/tags/tryit.asp?filename=tryhtml5_ev_onkeyup
但由于某种原因我收到此错误。
HTML
<nb-card>
<nb-card-header>
Enter your name:
</nb-card-header>
<nb-card-body>
<input type="text" id="fname" onkeyup="myFunction()">
</nb-card-body>
<script>
function myFunction() {
var x = document.getElementById("fname");
x.value = x.value.toUpperCase();
}
</script>
</nb-card>
没有星云库的同样错误: HTML
<html>
<body>
Enter your name:
<input type="text" id="fname" onkeyup="myFunction()">
<script>
function myFunction() {
var x = document.getElementById("fname");
x.value = x.value.toUpperCase();
}
</script>
</body>
</html>
有谁知道为什么?谢谢。
我已经尝试了很多其他的堆栈溢出解决方案,但它们都不起作用。我希望不要使用 JQuery。这应该有效,但没有。我按照其他 W3 School 示例进行操作并得到相同的错误。
您的代码在这里似乎工作正常。有什么问题?
<nb-card>
<nb-card-header>
Enter your name:
</nb-card-header>
<nb-card-body>
<input type="text" id="fname" onkeyup="myFunction()">
</nb-card-body>
<script>
function myFunction() {
var x = document.getElementById("fname");
x.value = x.value.toUpperCase();
}
</script>
</nb-card>
这不是 AngularJS 中的编码方式。利用平台的 baked-in 功能 - 就像使用 ng-click, ng-model and ng-keyup
在这种情况下,我认为解决方案就像使用 CSS class 强制大写一样简单,但我仍然希望这对您有所帮助。
angular.module('myApp', [])
.controller('myCtrl', ['$scope', '$http', function($scope, $http) {
$scope.fname = "";
$scope.myFunction = function() {
console.log($scope.fname)
}
}]);
.ucase {
text-transform: uppercase;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.5/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">
<nb-card>
<nb-card-header>
Enter your name:
</nb-card-header>
<nb-card-body>
<input type="text" ng-model="fname" class='ucase' ng-keyup="myFunction()">
</nb-card-body>
</nb-card>
</div>