Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法读取属性'$原始的';当字符串用作输入名称时的未定义值_Javascript_Angularjs_Validation - Fatal编程技术网

Javascript 无法读取属性'$原始的';当字符串用作输入名称时的未定义值

Javascript 无法读取属性'$原始的';当字符串用作输入名称时的未定义值,javascript,angularjs,validation,Javascript,Angularjs,Validation,在我的表格中,我有一个ng repeat,在这个ng repeat中,我有一堆字段。有时可能有3个字段,有时可能只有一个字段 我有一个角度为每个检查$pristine为一个特定的领域。字段的名称基本保持不变,但字段计数发生了变化,所以我想我会这样检查它: var price = "price_" + product.line_no; console.log($scope.myform.price.$pristine); = console.log($scope.myform."price_1"

在我的表格中,我有一个ng repeat,在这个ng repeat中,我有一堆字段。有时可能有3个字段,有时可能只有一个字段

我有一个角度为每个检查$pristine为一个特定的领域。字段的名称基本保持不变,但字段计数发生了变化,所以我想我会这样检查它:

var price = "price_" + product.line_no;

console.log($scope.myform.price.$pristine); = console.log($scope.myform."price_1".$pristine);
但我明白了:

TypeError: Cannot read property '$pristine' of undefined

确保在输入字段中设置了唯一名称属性。 这里有一个小提琴手可以帮忙



错误告诉您$scope.myform.price未定义。为什么它没有定义?@Mayday我的假设是它没有将
price
变量作为输入名称考虑在内,但我不确定为什么会这样。即使它被填充为
price\u 1
您是如何定义
$scope.myform.price
?在代码中,您只定义了一个名为price的字符串变量,而我没有定义它。我应该这样做吗?基本上,我试图实现的是,如果我手动使用
console.log($scope.myform.price_1.$pristine)
它会返回一个值,但如果我用字段名和行号设置一个变量,并在
console.log($scope.myform.price.$pristine)
中使用它,它会破坏它。
<div ng-repeat="product in products">
<input name="price_{{$index}}" type="text" ng-model="productList['price_' + $index]" required/>
</div>