Image 如何在表单验证时清除单词/图像?(AngularJS)

Image 如何在表单验证时清除单词/图像?(AngularJS),image,angularjs,forms,validation,required,Image,Angularjs,Forms,Validation,Required,为了清楚起见,在主题行中,它写着“文字/图像”。“词语”部分不是关于清除表单中的词语,而是“必需”一词。至于图像,这些是验证图像,如绿色复选标记 我刚刚意识到我不知道如何在AngularJS中完成表单后清除单词/图像。基本上,复选标记保持不变,并且“required”一词在提交经过验证的表单后出现。它是这样做的,因为现在表单是空的。我尝试在脚本页面中使用$setPristine $scope.imgHolderComments.$setPristine(true); 知道这可能行不通。我寻找了

为了清楚起见,在主题行中,它写着“文字/图像”。“词语”部分不是关于清除表单中的词语,而是“必需”一词。至于图像,这些是验证图像,如绿色复选标记

我刚刚意识到我不知道如何在AngularJS中完成表单后清除单词/图像。基本上,复选标记保持不变,并且“required”一词在提交经过验证的表单后出现。它是这样做的,因为现在表单是空的。我尝试在脚本页面中使用$setPristine

$scope.imgHolderComments.$setPristine(true);
知道这可能行不通。我寻找了一个解决方法,所以我检查了这个令人印象深刻的线程(但意识到这更多是为了验证本身,而不是添加文字/图像)

然后我尝试使用我今天之前用于预验证的代码。或者,如果您愿意,请在提交表单之前进行实时验证。我想我可以回收这个,但是不行

$scope.checkUrl = 'images/validation/y_square_trans.png';
            $scope.loadUrl = 'images/validation/loading.gif';
            $scope.crossUrl = 'images/validation/loading_wrong.gif';
            $scope.imgHolderComments = '';
            $scope.comments = "";
            $scope.timeout = null;
            $scope.imgHolderComments = ($scope.reviewForm.comments.$invalid) ? $scope.crossUrl : $scope.crossUrl;
这看起来太脏了,但我认为在把数据推进去后它可以工作。但图像仍然保留在那里(如你所见,我试着用十字代替复选标记,因为我不想创建一张空白图片)

我也用谷歌搜索了一下,但我能找到的一切都与两件事有关:清除表格和移除彩色边框(红色/绿色)。当然,我的表格已经做到了。因此,我仍在试图找到一种方法,在成功验证后删除表单中的单词“required”和gif图像

在任何情况下,我创造了一个plunker。你必须点击“评论”来显示表单


查看指令
ng show
ng hide

您可以设置
$scope.allGood=true控制器中的某个位置(验证后),并使用此指令:
必需

编辑: 您可能还需要查看
ng类
指令。例子:
Name:
并且很明显,根据您的需要将类设置为
green

基本上,我在每个表单问题中都使用了这个。我使用它的方式会被认为是“错误的”吗?:ng click=“requiredBlank=”,并在提交按钮中使用它:ng click=“submitted=true requiredBlank='displayne'”。如果验证是全局进行的,而不是每个字段,您也可以按照我的示例将
ng类
添加到表单本身,而不是表单的字段。并用CSS一次性隐藏所需的标签。不确定这是否适用-请随时更新您的plunker,以便我现在可以查看它的外观。很抱歉没有提前响应,周末意味着更多的家庭责任lol。我所修改的不再工作(可能我的缓存在我清除它之前弄乱了任何东西。再次清除它以确保)。我不知道为什么,但我试着模仿你说的一些事情。我可以给你看。