Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.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
Angularjs 根据多条记录和一个条件设置输入类型文本的ng模型_Angularjs_Typescript - Fatal编程技术网

Angularjs 根据多条记录和一个条件设置输入类型文本的ng模型

Angularjs 根据多条记录和一个条件设置输入类型文本的ng模型,angularjs,typescript,Angularjs,Typescript,因此,我希望使用ng repeat在输入文本框中填入“answerDisplayText”,如果回答列表中的回答为true,则其他选项将为空 如果回答列表中的回答为真,则“其他”将为空 根据您的输入数据: json = [ question-list:{ question-Text: "the car more than 25 years old", answer-list:[ {answerDisplayText: "58",answered:true},

因此,我希望使用
ng repeat
在输入文本框中填入
“answerDisplayText”
,如果回答列表中的回答为
true
,则其他选项将为空

如果回答列表中的回答为真,则“其他”将为空

根据您的输入数据:

json = [ 
 question-list:{
   question-Text: "the car more than 25 years old",
   answer-list:[
    {answerDisplayText: "58",answered:true},         
    {answerDisplayText: "", answered:false}]
   }
]

如果你只是绑定到
answerDisplayText
上,那么不管怎么说,它都应该很好:)

使用ng If并检查给定问题是否没有答案。如果没有,则显示一个单独的div,输入为空。见下面的例子

angular
.module('exampleApp',[])
.控制器(“ExampleController”,ExampleController);
函数ExampleController(){
var vm=这个;
vm.jsonObject=[{
问题文字:“车龄超过25年”,
答复名单:[{
回答显示文字:“58”,
回答:是的
}, {
回答显示文本:“”,
回答:错
}]
}, {
问题文本:“这个问题没有答案”,
答复名单:[{
回答显示文字:“58”,
回答:错
}, {
回答显示文本:“”,
回答:错
}]
}];
vm.isHavingAnswer=函数(应答列表){
var isHavingAnswer=错误;
angular.forEach(应答列表、函数(应答){
如果(回答,回答){
isHavingAnswer=true;
}
});
返回isHavingAnswer;
}
}

问题:{{questionList.questionText}

答复: 答复:


如果阅读说明您尝试了什么,请使用ng?答案列表中有多个条目。它们中的每一个都有文本输入吗?没有完全理解您的问题@curil i used ng if,但如果输入框为false,则不填充,两个列表中的回答都可能为false,因此如果回答为false,则输入框应为空。@在这种情况下,将显示两个输入框。一个问题应该只有一个文本框我已经更新了这个例子,但我真的不明白你想做什么。你能告诉我上面的例子是否是你想要的,如果不是,那么请告诉我一些场景和你想要的输出是什么,例如,当两个答案为真时会发生什么。javascript端的具体值。我想添加所有anserDisplayText,重复。顺便说一下。我的要求很明确。我想从列表中显示答案。如果给出了答案,请在文本框中填写答案,否则显示为空。我已再次更新示例。我相信你要做的是绑定真实答案,或者如果没有真实答案,则显示为空的输入。什么是“newAnswer”?但根据你的代码片段,我想要的是什么。我也以与您相同的方式解决了这个问题,但我在Answerlist外的json中添加了一个新字段,并创建了Answerlist,saved is true,然后在新添加的字段中设置值。将显示两个不同的文本框。我需要一个文本框来显示答案。我们能找到答案显示文本吗?
{answerDisplayText: "58",answered:true},         
{answerDisplayText: "", answered:false}
<div ng-hide="json.answered==false"><input type="text" ng-model="json.answerDisplayText"></div><div ng-hide="json.answered==true"><input type="text"></div>