【发布时间】:2025-11-22 19:35:01
【问题描述】:
我需要通过文本输入仅来自 ng-repeat 的未定义字段进行编辑。例如这是一个可能的对象:
{
"name": "Alex",
"number": "12547",
"visible": true,
"text": undefined
}
我需要填写undefined 字段。但其他人没有!有什么问题?如果我写这样的东西:
<span ng-if="dataValue.text != undefined">
{{dataValue.text}}
</span>
<input type="text" ng-if="dataValue.text == undefined" ng-model="dataValue.text" />
当我输入第一个字母时,输入消失了,因为它发现它不再是未定义的了!我不能编辑它!有什么快速的方法吗?摘要,我需要使未定义的字段不可编辑,但我需要编辑未定义的字段。 在这种情况下,我不能使用一次性绑定。谢谢
代码在表格内。该示例显示了一个<td></td> 部分,其中有<span> 和<input>
【问题讨论】:
-
你可以使用一次性绑定语法并做
ng-if="::dataValue.text == undefined",我认为无论如何。 -
我试过了,但我做不到,因为表格有分页和更改页面,它将输入保持在上一页的相同位置
-
如何保留一份副本并使用它来显示/隐藏而不是实际对象本身?
-
@tanmay 应该是一种方式。但最后我必须使用原始对象,因为我必须将该数据发送到服务器
-
@End.Game 当然,我是说使用副本来显示/隐藏东西..您的模型来自原始对象本身..所以将其发送到服务器应该没有问题..
标签: javascript angularjs forms input