<script type="text/javascript" language="javascript">
//屏蔽浏览器右键
function stop(){
return false;
}
document.oncontextmenu = stop;
var i=3;
$(function() {
//点击页面其他位置右键菜单消失
$('body').bind('click', function(ev) {
$('#menu').css('display','none');
$('#menub').css('display','none');
});

var $inp = $('.cls');
$inp.bind('keydown', function(e) {
var key = e.which;
if (key == 13) {
var id = $("input:focus").attr("id");
if (id == "isAbroad2") {
addTable();
document.getElementById("name3").focus();
}
e.preventDefault();
var nxtIdx = $inp.index(this) + 1;
$(".cls:eq(" + nxtIdx + ")").focus();
}
});

//回显子表1数据
var b=$("#dcasXmsbs_2_1s").val();
if(b!=null && b!=""){
var c=b+"";
var d=c.replace(/__/g, '"');
var e=d+"";
var json=eval('('+e+')');
if(json.length<1){

}else{
for ( var s = 0; s < json.length; s++) {
if(s>2){
addTable();
}
$("#id"+s).val(json[s].id);
$("#name"+s).val(json[s].name);
$("#birthday"+s).val(json[s].birthday);
$("#nationality"+s).val(json[s].nationality);
$("#education"+s).val(json[s].education);
$("#duty"+s).val(json[s].duty);
$("#studyDirection"+s).val(json[s].studyDirection);
$("#plan"+s).val(json[s].plan);
$("#isAbroad"+s).val(json[s].isAbroad);
}
i = json.length;
}
}
});
//追加明细
function addTable() {
var s = i+1;
var tbody= "tbody" + i;

var id = "id" + i;
var name = "name" + i;
var birthday = "birthday" + i;
var nationality = "nationality" + i;
var education = "education" + i;
var duty = "duty" + i;
var studyDirection = "studyDirection" + i;
var plan = "plan" + i;
var isAbroad = "isAbroad" + i;
$("#table_buffer")
.append(
" <tbody id=\""+tbody+"\" class='pn-ltbody'> "
+ "<td> "+ "<input type=\"hidden\" id=\""+id+"\" name=\""+id+"\"/>"+ "<input type=\"text\" id=\""+name+"\" name=\""+name+"\" style=\"width: 80px;\" onmouseup=\"youjian("+s+",this)\" />"+ "</td> "
+ "</tbody>");
i++;
$("#countInfo1").val(i);
}

function changeNextFocus(str, s,event) {
if (event.keyCode == 13) {
if (str == "netLine") {
addTable();
var ss = s + 1;
document.getElementById("name" + ss).focus();
} else {
str.focus();
}
}
}

//表格1
//右键事件
var rowIndex; //用于后台删除数据
var rowIndex2;//标识当前行
function youjian(a,b){

var container = document.getElementById('table_buffer');
var menu = document.getElementById('menu');
if(event.button == 2){
var evt = window.event || arguments[0];
/*获取当前鼠标右键按下后的位置,据此定义菜单显示的位置*/
menu.style.left = container.scrollLeft + evt.clientX + "px";
menu.style.top = container.scrollTop + evt.clientY +document.body.scrollTop+ "px";
/*设置菜单可见*/
$('#menu').css('display','block');
rowIndex = a;
rowIndex2 = b;
}
}

//删除行
function delRow(){
var r = rowIndex-1;
var delId1 = $('#delId1').val();
if(delId1==null || delId1 == ""){
var id = $("#id"+r).val();
$('#delId1').val(id);
}else{
$('#delId1').val(delId1+","+$("#id"+r).val());
}
document.getElementById('table_buffer').deleteRow(rowIndex2.parentNode.parentNode.rowIndex);
}
</script>

<body>

<div id="menu" class="menuSkin">
<span style="cursor: pointer;" id="shanchu" onclick="delRow()">删除</span>
</div>

</body>

js回车动态添加表格,右键动态删除表格行的更多相关文章

  1. ASP.NET网页动态添加、更新或删除数据行

    ASP.NET网页动态添加.更新或删除数据行 看过此篇<ASP.NET网页动态添加数据行> http://www.cnblogs.com/insus/p/3247935.html的网友,也 ...

  2. Quartz动态添加,修改,删除任务(暂停,任务状态,恢复,最近触发时间)

    首页 博客 学院 下载 图文课 论坛 APP 问答 商城 VIP会员 活动 招聘 ITeye GitChat 写博客 小程序 消息 登录注册 关闭 quartz_Cron表达式一分钟教程 09-05 ...

  3. javascript里面的数组,json对象,动态添加,修改,删除示例

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  4. Quartz动态添加、修改和删除定时任务

    任务调度开源框架Quartz动态添加.修改和删除定时任务 Quartz 是个开源的作业调度框架,为在 Java 应用程序中进行作业调度提供了简单却强大的机制.Quartz框架包含了调度器监听.作业和触 ...

  5. Quartz 2.2 动态添加、修改和删除定时任务

    QuartzManager.Java 动态添加.修改和删除定时任务管理类 import org.quartz.CronScheduleBuilder; import org.quartz.CronTr ...

  6. 转: javascript动态添加、修改、删除对象的属性和方法

    在其他语言中,对象一旦生成,就不可更改了,要为一个对象添加修改成员必须要在对应的类中修改,并重新实例化,而且程序必须经过重新编译.JavaScript 中却非如此,它提供了灵活的机制来修改对象的行为, ...

  7. Quartz 2.3 动态添加、修改和删除定时任务

    下面直接上代码: <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>qu ...

  8. javascript动态添加、修改、删除对象的属性与方法

    在其他语言中,对象一旦生成,就不可更改了,要为一个对象添加修改成员必须要在对应的类中修改,并重新实例化,而且程序必须经过重新编译.JavaScript 中却非如此,它提供了灵活的机制来修改对象的行为, ...

  9. redis怎么动态添加内存,动态配置,无需重启。

    在redis的使用过程中,有时候需要急需修改redis的配置,比如在业务运行的情况下,内存不够怎么办,这时要么赶紧删除无用的内存,要么扩展内存.如果有无用的内容可删除那么所有问题都已经解决.如果内容都 ...

  10. 动态添加布局、动态添加View、LinearLayout动态添加View;

    LinearLayout提供了几个方法,用作动态添加View特别好用: 可以添加View.删除View.删除指定位置View.删除全部View: 看代码: public class MainActiv ...

随机推荐

  1. PBOC金融IC卡,卡片与终端交互的13个步骤,简介-第一组(转)

    两个PPT结合起来--一些基础介绍--每一步的详细细节还要去研读文档 EMV-全球标准PBOC-国内标准 ----------------------一:必选:应用选择应用选择的方法:目录选择法.AI ...

  2. Tomcat7.0安装配置

    很久没有通过博客对学习所得进行记录了. 现在将使用Tomcat的一些经验和心得写到这里,作为记录和备忘.如果有朋友看到,也请不吝赐教. 首先,我个人使用的是apache-tomcat-7.0.27你可 ...

  3. LogConfigruration

    import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import ...

  4. RxAndroid/java小记

    Rxandroid 作为一个在设计模式中能把MVP发挥的淋漓尽致的框架不去学习感觉真的对不起自己,然后也学点新东西吧,响应式编程,MVP观察者模式,然后使用RxAndroid使我们自己的代码更加简洁 ...

  5. apache与nginx的虚拟域名配置

    由于开发需求,项目有时候需要设置虚拟域名进行测试.下面是分别是apache和nginx的配置 一.apache 环境:wampserver2.5 1.修改host文件 C:\Windows\Syste ...

  6. php 保存到mysql数据库中的中文乱码

    近期又php项目,乱码是个头痛的问题 解决方法: 1,php 文件中 添加 header(“Content-Type: text/html; charset=utf-8"); 2,需要做数据 ...

  7. 安装pear

    下载go-pear.phar php go-pear.phar pear install Mail-1.2.0 pear list

  8. PHP之OOP要点摘要

    类和对象:    类是生成对象的模板,对象是活动组件;    面向对象编程实际操作都是通过类的实例(而不是类本身)完成的:    访问控制(public.protected.private):(1) ...

  9. winform项目打包成可安装程序(vs2015)

    1.新建安装和部署项目      如果是初始使用并且原来没有下载过,会被所引导一个下载界面http://learn.flexerasoftware.com/content/IS-EVAL-Instal ...

  10. bootstrap中如何让响应式图片(img-responsive)水平居中

    我们在用bootstrap排版内容的时候,有的时候在内容中需要图片水平居中对齐. 一般情况下,我们的图片都使用了 .img-responsive 类来实现响应式图片.如果需要实现响应式图片水平居中,那 ...