Javascript ng show无法正常工作

Javascript ng show无法正常工作,javascript,angularjs,validation,ng-show,Javascript,Angularjs,Validation,Ng Show,因此,我有以下代码: var validationApp = angular.module('validationApp', []); validationApp.controller('mainController', function($scope) { $scope.submitForm = function(isValid) { alert('form is valid!'); }; }); <body ng-app="validationA

因此,我有以下代码:

var validationApp = angular.module('validationApp', []);

validationApp.controller('mainController', function($scope) {

    $scope.submitForm = function(isValid) {
         alert('form is valid!');
    };
});

<body ng-app="validationApp" ng-controller="mainController">

<form name="newTaskForm" ng-submit="submitForm(newTaskForm.$valid)" novalidate>

<input type="text" list="Topics" name="Topic" placeholder="Topic" ng-model="topic" required>
<p ng-show="newTaskForm.topic.$invalid">Please enter a valid Topic</p>
我试图让消息显示出来,但它就是不显示,我检查了元素和所有元素,输入文本的类也发生了变化,但是ng show没有移动,它开始是隐藏的,只是保持隐藏状态,我尝试了其他bg show条件,但没有用:/

我只包含了我认为重要的部分代码。。。为了简单起见

这仍然是我的angularJS“冒险”的第一天,所以这可能是一个非常简单的错误,但我已经做了一个小时,不知道出了什么问题


感谢您的帮助。谢谢你犯了一个愚蠢的错误。请使用以下代码:

<input type="text" list="Topics" name="Topic" placeholder="Topic" ng-model="topic" required>
                <p ng-show="newTaskForm.Topic.$invalid">Please enter a valid Topic</p>

将newTaskForm.topic.$invalid更改为newTaskForm.topic.$invalid,因为您的名字=topic.嗯,这太尴尬了。。万分感谢:我仍然掌握着这个技巧。
<input type="text" list="Topics" name="Topic" placeholder="Topic" ng-model="topic" required>
                <p ng-show="newTaskForm.$invalid">Please enter a valid Topic</p>
ng-show="newTaskForm.Topic.$invalid"