删除选中的

本文通过一个具体的示例,展示了如何使用AngularJS进行数据绑定、操作及响应式表单控制。示例中包括了如何实现表格数据的动态显示、删除功能、全选与反选操作,以及如何通过AngularJS的指令和控制器来管理这些功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="../angular-1.5.5/angular.js"></script>
<style>
button{
border-radius:8px;
margin-left: 320px;
border: 1px solid #387ef5;
background: #387ef5;
color: white;
}
table{
border: 1px solid #555555;
width: 400px;
}
</style>
<script>
var myapp=angular.module("myapp",[]);
myapp.controller("myCtrl",function ($scope) {
$scope.data = [{
id:"1",
name:"zs",
age:"12",
sex:"男",
check:false
},
{
id:"2",
name:"ls",
age:"13",
sex:"女",
check:false
},{
id:"3",
name:"ww",
age:"16",
sex:"男",
check:false
},
{
id:"4",
name:"zx",
age:"19",
sex:"女",
check:false
}
];
$scope.del=function () {
var num=0;
for(var i=0;i<$scope.data.length;i++){
if($scope.data[i].check==false){
num++;
}
}
if(num==$scope.data.length){
alert("请勾选数据");
}else{
for(var i=0;i<$scope.data.length;i++){
if($scope.data[i].check==true){
$scope.data.splice(i,1);
i--;
}
}
}
}
//全选
$scope.checkAll=false;
$scope.check2=function () {
if($scope.checkAll==true){
for(var i=0;i<$scope.data.length;i++){
$scope.data[i].check=true;
}
}else{
for(var i=0;i<$scope.data.length;i++){
$scope.data[i].check=false;
}
}
}
//反选
var n=0;
$scope.count=function (index) {
if($scope.data[index].check==true){
n++;
}else{
n--;
}if(n==$scope.data.length){
$scope.checkAll=true;
}else{
$scope.checkAll=false;
}
}
});
</script>
</head>
<body ng-app="myapp" ng-controller="myCtrl">
<button ng-click="del()">删除选中的</button>
<table border="1" cellpadding="10" cellspacing="0">
<thead>
<tr>
<th><input type="checkbox" ng-click="check2()" ng-model="checkAll"></th>
<th>ID</th>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="item in data">
<td><input type="checkbox" ng-model="item.check" ng-click="count($index)"></td>
<td>{{item.id}}</td>
<td>{{item.name}}</td>
<td>{{item.age}}</td>
<td>{{item.sex}}</td>
</tr>
</tbody>
</table>

</body>
</html>

转载于:https://www.cnblogs.com/wsq110/p/7710999.html

<think>我们正在回答关于gVim中删除选中词的操作。根据之前的上下文,用户已经知道可视模式(visual mode)的存在,所以这里需要具体说明如何删除选中的词。 在gVim中,删除选中词通常需要先进入可视模式选中词,然后执行删除操作。但用户可能想知道更快捷的方式,比如直接删除当前光标下的词(无需进入可视模式)。 因此,我们分两种情况说明: 1. 通过可视模式选中删除 2. 直接删除光标下的词(普通模式下的删除命令) 另外,注意用户问题中的“选中词”可能指的是已经选中的词(即在可视模式下已经选中的文本),也可能是指如何选中删除一个词。 我们按照两种情况分别解释。 步骤: 1. 可视模式删除: - 进入可视模式:按`v`(字符可视模式)或`V`(行可视模式)或`Ctrl+v`(块可视模式),然后用移动命令选中文本。 - 按`d`删除选中的文本。 2. 普通模式下删除一个词: - 使用`dw`删除从光标位置到下一个单词的开头(不包括下一个单词的第一个字符)。 - 使用`daw`(delete a word)删除光标所在的整个单词(包括周围空格,如果光标在单词中间,则删除整个单词和相邻的一个空格?注意:daw会删除单词及一个空格,但行为取决于光标位置和文本结构)。 - 使用`diw`(delete inner word)删除光标所在的单词(不删除周围空格)。 我们重点解释`daw`和`diw`,因为这是直接删除一个词(无需先进入可视模式)的常用方法。 注意:在gVim中,这些命令都是在普通模式下使用的。 示例: 假设文本:`Hello world!` 光标在`Hello`的字母'e'上: - `dw` 会删除从'e'到空格之前,结果为`Hllo world!`(实际上会删除'e'和后面的'llo',但注意:dw删除到下一个单词开始,所以会删除'e'和'llo',然后空格还在,变成`H world!`)—— 这个解释可能有点复杂,我们重新组织。 实际上,`dw`的删除范围是从光标位置到下一个单词开始(不包括下一个单词的第一个字符),所以如果光标在单词开头(比如在'H'上),`dw`会删除整个单词(包括后面的空格)。如果光标在单词中间,则从光标处删除到单词末尾(包括空格?不,不包括空格,因为空格是下一个单词的开始,而dw只删除到下一个单词开始前,所以空格保留?)。这容易引起混淆,因此我们更推荐使用`daw`和`diw`来精确删除一个单词。 因此,我们重点介绍: - `daw`:删除一个单词(包括该单词后面的空格,如果后面有空格的话;如果单词在行末,则不会删除换行符)。如果光标在单词上,它会删除整个单词及其相邻的一个空格(如果有的话)。这个命令非常智能,它会将整个单词作为一个文本对象(text object)来处理。 - `diw`:删除光标所在的单词(内部单词),不包含周围空格。如果光标在空格上,则删除相邻的单词(但行为可能不符合预期,所以建议光标在单词内使用)。 因此,针对用户问题“gvim删除选中词”,我们可以这样回答: 如果已经选中了词(在可视模式下),直接按`d`即可删除。 如果未选中,则可以使用普通模式下的文本对象命令快速删除单词,如`daw`或`diw`。 同时,我们也可以提一下,在可视模式下,选中一个单词的快捷方式:将光标放在单词上,按`viw`(进入可视模式并选中当前单词)或`vaw`(选中当前单词及一个空格),然后按`d`删除。 但是,为了简洁和直接,我们主要介绍两种方式。 最后,按照要求,我们需要在最后提出3-5个相关问题。 注意:回答中不要包含示例代码块,因为用户的问题是关于快捷键操作的,所以用文本描述即可。但如果有必要,我们可以用示例文本来说明操作效果,不过这里我们尽量用描述性语言。 回答结构: 1. 可视模式下删除选中的词:按`d` 2. 普通模式下删除光标所在的词:使用`daw`或`diw` 然后给出相关问题。</think>### gVim 删除选中词的操作详解 在 gVim 中删除选中词主要通过**可视模式**实现,以下是具体方法和常用技巧: #### 核心操作步骤 1. **进入可视模式**: - `v`:字符级选择(适合单词) - `V`:行级选择 - `Ctrl+v`:块级选择 2. **选中目标词**: - 移动光标选中单词(推荐使用 `w`/`e`/`b` 快速跳词) - 或直接使用组合命令选中整个单词: ```vim viw " 选中当前光标所在的整个单词(不含空格) vaw " 选中当前单词及相邻空格 ``` 3. **执行删除**: - 按 `d` 删除选中内容(删除后进入普通模式) - 或 `x` 删除单个字符(适用于字符级选择) > **高效组合**:`daw` = 直接删除当前单词(Delete A Word),无需先进入可视模式 #### 特殊场景处理 | 场景 | 解决方案 | 示例 | |------|----------|------| | **删除多个相同单词** | `:%s/\<word\>//g` | 全局删除所有"word" | | **删除引号内内容** | `di"` | 删除双引号间文本 | | **删除括号内内容** | `di(` | 删除圆括号内文本 | | **删除到词尾** | `dw` | 删除从光标到词尾 | #### 注意事项 1. 删除后内容存入寄存器(可用 `:reg` 查看) 2. 误删后按 `u` 撤销 3. 使用 `:set iskeyword+=_` 可将下划线视为单词部分 4. 组合数字使用:`d2w` = 删除后续2个单词
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值