`

jquery仿邮件收件人删除事件

阅读更多

//获取文本框光标位置:javascript版本
function getCursortPosition(domObj) {
	var position = 0; 

	if (document.selection) {	//for IE
		domObj.focus();
		var sel = document.selection.createRange();
		sel.moveStart('character', -domObj.value.length);

		position = sel.text.length;
	} else if (domObj.selectionStart || domObj.selectionStart == '0') {
		position = domObj.selectionStart;
	}
	return position;
}

//获取文本框光标位置:jquery版本
function getCursortPosition2(domObj) {
	var position = 0; 

	if (document.selection) {	//for IE
		domObj.focus();
		var sel = document.selection.createRange();
		sel.moveStart('character', -domObj.val().length);

		position = sel.text.length;
	} else if (domObj.selectionStart || domObj.selectionStart == '0') {
		position = domObj.selectionStart;
	}
	return position;
}

$(function(){
	//添加收件人删除功能
	$('#').keydown(function(event){
		var myEvent = event || window.event;
        var kcode = myEvent.keyCode|| myEvent.which;
        var value = $(this).val();
        if(kcode==37 || kcode==39){
        	return true;
        }
        
        if(kcode == 8){
        	var a = getCursortPosition2($(this));
        	//截断value值
        	var firstValue = value.substr(0,(a/1)>0?(a):0);
        	var lastValue = value.substr(a);
        	//根据索引判断
        	var firstIndexOf = firstValue.lastIndexOf(";");
        	var lastIndexOf = lastValue.indexOf(";");
        	 
        	if(fastIndexOf==-1){//选择第一个收件人的判断:直接丢弃firstValue,保留lastValue从第一个;之后的值
        		$(this).val(lastValue.substr(lastIndexOf+1));
        	}else if(lastIndexOf==-1){//选择最后一个人的判断:由于选择最后一个,重新设置值,并减少最后一个; 再次排除最后一个;后面的值
        		firstValue = value.substr(0,(a/1)>0?(a-1):0);
        		$(this).val(firstValue.substr(0,firstValue.lastIndexOf(";")+1));
        	}else{//选择中间的收件人的判断:保留fisrtValue从索引0开始到第一个firstIndexOf+1,并加上lastValue从索引(lastIndexOf+1)到最后的值
        		$(this).val(firstValue.substr(0,firstIndexOf+1)+(lastIndexOf>0?lastValue.substr(lastIndexOf+1):""));
        	}
        }
        
        return false;
	});
});

 

  • 大小: 1.1 KB
分享到:
评论

相关推荐

    Jquery仿收件人效果autocomplete

    本主题聚焦于"Jquery仿收件人效果autocomplete",这是一个常见的功能,常用于电子邮件系统或者搜索框,允许用户在输入时自动填充可能的匹配项,提供方便快捷的用户体验。 在电子邮件应用中,"收件人效果"通常指的是...

    Jquery仿163收件人效果+邮箱验证

    通过以上分析,我们可以看出,实现"Jquery仿163收件人效果+邮箱验证"涉及到的知识点包括:jQuery事件处理、Ajax异步请求、正则表达式验证、数据匹配算法以及jQuery UI的`autocomplete`插件的使用。这些技术的结合,...

    仿QQ邮件收件人文本框

    总的来说,"仿QQ邮件收件人文本框"的实现涉及到了前端开发的多个方面,包括JavaScript交互、CSS样式设计、HTML结构构建、图片资源运用以及可能的Ajax通信。开发者需要对这些技术有深入理解,才能创建出功能完备且...

    jQuery实现的Email中的收件人效果(按del键删除)

    综上所述,通过本例中所展示的代码,我们可以了解到使用jQuery实现的Email中的收件人效果,如何通过键盘事件处理器来控制收件人的添加与删除,以及如何运用JavaScript和HTML进行基本的前端开发。这些知识点不仅有助...

    电子邮件的接收

    通过这个库,我们可以解析接收到的邮件内容,包括主题、发件人、收件人、正文以及附件等信息。 3. **Python的smtplib库**:这个库负责与SMTP服务器交互,实现邮件的发送和接收。对于接收邮件,我们需要配置POP3或...

    js仿QQ邮箱收件人选择与搜索功能

    3. **删除收件人**: 当用户点击删除键或退格键时,会检测当前焦点所在的收件人项。如果找到,会移除该收件人项,同时更新`#divtxt`、`#messId`和`#messName`的值。这部分代码没有完全给出,但通常会监听键盘事件,...

    jquery tag-it使用文档以及实例

    它适用于网页应用,特别是在需要用户输入多个分类或关键词的场景中,如博客标签、邮件收件人等。这个插件基于流行的jQuery框架,提供了一种优雅的方式来实现自定义标签输入,同时支持多种功能和定制选项。 ### 核心...

    JavaScript MySQL实现电子邮件接收系统【优质毕业设计、课程设计项目】.zip

    - **数据库设计**:MySQL用于存储和管理邮件系统中的数据,包括用户信息、邮件内容、发件人、收件人等。设计合理的数据库结构是关键,需要考虑如何创建用户表、邮件表以及它们之间的关系。 - **SQL查询**:编写SQL...

    C#邮件管理系统源码

    这包括创建邮件对象、设置发件人、收件人、主题、正文和附件等。 4. 邮件存储:邮件可能会被保存在本地数据库或云存储中,便于用户查询、归档和备份。这可能涉及到关系型数据库如SQL Server或非关系型数据库如...

    基于asp.net的邮件管理系统

    1. **发送邮件**:系统应包含一个接口,允许用户输入收件人、主题和正文,并通过SMTP(简单邮件传输协议)将邮件发送出去。这通常涉及到使用C#的System.Net.Mail命名空间中的SmtpClient类。 2. **接收邮件**:系统...

    jquery-manifest:一个jQuery插件,为输入选择多个值增加了乐趣

    电子邮件应用程序中的“收件人”字段就是一个很好的例子。 您可以只提供纯文本输入,要求用户用逗号手动分隔每个收件人。 但是,删除收件人是一件痛苦的事情:用户必须精确地选择正确数量的文本,确保不要意外删除...

    asp.net 基于 ajax的邮件管理系统

    - 写信:创建新邮件,包括添加收件人、抄送人,设置主题和正文。 - 发送/转发/回复:处理邮件的发送、转发和回复操作。 - 文件上传/下载:支持附件上传和下载。 - 删除/标记:对邮件进行删除或标记为已读/未读等操作...

    JSP基于BS结构下的邮件系统设计开发(源代码+论文).rar

    可能涉及到的表有用户表(包含用户名、密码等)、邮件表(邮件ID、发件人、收件人、主题、内容、时间戳等)。 3. **功能模块**: - 用户注册与登录:用户可以通过注册获得账户,登录后可以使用邮件服务。 - 邮箱...

    邮箱系统 用Struts简单开发的

    3. 发送邮件:用户填写收件人、主题和邮件内容,点击发送后,系统通过SMTP协议将邮件发送至指定地址。 4. 收取邮件:系统定期或按需通过POP3/IMAP协议从邮件服务器获取新邮件,更新用户的收件箱。 5. 搜索功能:...

    PHP网站开发项目式教程任务3.pptx

    - **功能描述**:在收件箱界面,展示未被标记为删除的邮件总数,并提供分页功能。用户可以看到"首页"、"上页"、"下页"和"尾页"的链接或按钮。根据当前页码,这些链接的状态会动态调整,如在第一页时禁用"首页"和"上...

    MCV3 web mai

    在邮件应用中,可能会有一个`Mail`类,包含邮件的属性如发件人、收件人、主题、内容等,以及与邮件相关的操作。 7. **数据库交互**:应用可能使用Entity Framework或其他ORM(对象关系映射)工具与数据库交互。...

    zTree的基本应用

    用户可以通过搜索、浏览联系人树,快速找到并添加收件人、抄送人或密送人。同时,zTree的拖放功能还能帮助用户方便地调整收件人顺序。 五、扩展功能 除了基本操作,zTree还支持自定义节点样式、拖放排序、异步加载...

    基于php的邮箱系统的设计与实现【附源码】

    3. 收件箱:系统应能接收并展示来自其他用户的邮件,支持按时间、发件人等条件排序。 4. 发件箱:用户可以撰写、发送邮件,并查看已发送的邮件记录。 5. 草稿箱:保存正在编写但未完成的邮件,方便用户后续继续编辑...

Global site tag (gtag.js) - Google Analytics