Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.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 如何在保持内容为AngularJS的同时操作DOM类型?_Javascript_Angularjs_Dom - Fatal编程技术网

Javascript 如何在保持内容为AngularJS的同时操作DOM类型?

Javascript 如何在保持内容为AngularJS的同时操作DOM类型?,javascript,angularjs,dom,Javascript,Angularjs,Dom,我想显示一个列表,让用户编辑它们 该列表是使用ng repeat生成的。首先,当它被显示时,它应该是纯文本的形式。但是当用户按下相应的编辑按钮时,应该将其更改为输入文本字段,内容不变。当用户提交表单时,数据将被保存,输入内容应更改回纯文本 这与有棱角的思维方式相容吗?如果是的话,我如何认识到这一点?如果没有,用AngularJS实现这个想法的正确方法是什么?类似的方法可能会奏效: <ul> <li ng-repeat='item in items'>

我想显示一个列表,让用户编辑它们

该列表是使用ng repeat生成的。首先,当它被显示时,它应该是纯文本的形式。但是当用户按下相应的编辑按钮时,应该将其更改为输入文本字段,内容不变。当用户提交表单时,数据将被保存,输入内容应更改回纯文本


这与有棱角的思维方式相容吗?如果是的话,我如何认识到这一点?如果没有,用AngularJS实现这个想法的正确方法是什么?

类似的方法可能会奏效:

<ul>
    <li ng-repeat='item in items'>
        <span ng-hide='item.editing'>item.value</span>
        <input type='text' ng-show='item.editing' ng-model='item.value' />
        <button ng-click='item.editing = !item.editing'>Edit</button>
    </li>
</ul>

然后在提交操作集item.editing=false中,对于items中的每个项目,类似的操作可能会起作用:

<ul>
    <li ng-repeat='item in items'>
        <span ng-hide='item.editing'>item.value</span>
        <input type='text' ng-show='item.editing' ng-model='item.value' />
        <button ng-click='item.editing = !item.editing'>Edit</button>
    </li>
</ul>

然后,在提交操作集item.editing=false中,对于items中的每个项,我更喜欢使用angular js的另一种方式或方法是跟踪范围中的当前项,如果正在编辑的字段数量较大,则效果会更好

$scope.currentitem;
将当前项目设置为正在编辑的项目

<button ng-click='currentitem = item'>Edit</button>
现在你可以像这样填写一张表格

<input type='text'  ng-model='currentitem.value' />

我更喜欢angular js的另一种方法是跟踪作用域上的当前项,如果编辑的字段数量很大,则效果会更好

$scope.currentitem;
将当前项目设置为正在编辑的项目

<button ng-click='currentitem = item'>Edit</button>
现在你可以像这样填写一张表格

<input type='text'  ng-model='currentitem.value' />