本文实例为大家分享了js实现按钮进行某行上移下移的具体代码,供大家参考,具体内容如下

先上个通用简单的代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>使用js实现上移、下移、置顶、置底功能及源码案例</title>
<meta name="description" content="">
<meta name="keywords" content="">
<link href="" rel="stylesheet">
<script src="jquery-1.7.1.min.js"></script>
<style>
 .demo li{line-height: 30px;border-bottom: 1px solid #000;}
 .demo li a{padding: 0 20px;}
</style>
</head>
<body>
 
<ul id="addChildDiv">
 <li>001 <a href="#" class="up1">上移</a><a href="#" class="down1">下移</a><a href="#" class="top1">置顶</a><a href="#" class="bottom1">置底</a></li>
 <li>002 <a href="#" class="up1">上移</a><a href="#" class="down">下移</a><a href="#" class="top1">置顶</a><a href="#" class="bottom1">置底</a></li>
 <li>003 <a href="#" class="up1">上移</a><a href="#" class="down1">下移</a><a href="#" class="top1">置顶</a><a href="#" class="bottom1">置底</a></li>
 <li>004 <a href="#" class="up1">上移</a><a href="#" class="down1">下移</a><a href="#" class="top1">置顶</a><a href="#" class="bottom1">置底</a></li>
</ul>
<script>
 $("#addChildDiv").on('click', 'a', function(event) {
  event.preventDefault;
  var parent=$(this).parent();
  var parents=$(this).parents("#addChildDiv");
  var len=parents.children().length;
  if(($(this).is(".up1") || $(this).is(".top1")) && parent.index()==0){
   return false;
  }else if(($(this).is(".down1") || $(this).is(".bottom1")) && parent.index()==len-1){
   return false;
  }
  switch (true) {
   case $(this).is(".up1"):
    var prev = parent.prev();
    parent.insertBefore(prev);
    break;
   case $(this).is(".down1"):
    var next = parent.next();
    parent.insertAfter(next);
    break;
   case $(this).is(".top1"):
    parents.prepend(parent);
    break;
   case $(this).is(".bottom1"):
    parents.append(parent);
    break;
  }
 });
</script>
</body>
</html>

样式如下:

以下是实际运用,包括移动后获取数据,每一行的顺序等等:

//获取数据后插入页面
function getLine(){
    var childAreaListSize = ${childAreaListSize };
    var childAreaList = ${childAreaList };
    for(var i=0;i<childAreaListSize;i  ){
          a;
        var tar = "<li>";
        tar  = " <input type=\"hidden\" id=\"awId_"  a  "\" name=\"awId_"  a "\" value=\""  childAreaList[i].id   "\"  />";
        
        tar  = " <span style=\"color: red;\">*</span>";
        tar  = " <span \">工程代码:</span>";
        tar  = " <input  style=\"width:250px\" type=\"text\" id=\"awCode_"  a  "\" name=\"awCode_"  a "\" value=\""  childAreaList[i].awCode   "\"  maxlength=\"50\" readonly/>";
        
        
        tar  = " <span style=\"color: red;\">*</span>";
        tar  = " <span \">工程名称:</span>";
        tar  = " <input  style=\"width:250px\" type=\"text\" id=\"awName_"  a  "\" name=\"awName_"  a "\" value=\""  childAreaList[i].awName   "\" maxlength=\"50\" readonly/>";
        
        tar  = "  <a href=\"###\" class=\"top1\" \">置顶</a>";
        tar  = "  <a href=\"###\" class=\"up1\" \">上移</a>";
        tar  = "  <a href=\"###\" class=\"down1\" \">下移</a>";
        tar  = "  <a href=\"###\" class=\"bottom1\" \">置底</a>";
        tar  = "</li>";
        
        
        $("#addChildDiv").append(tar);
        
    }
 }
 
//排序
$("#addChildDiv").on('click', 'a', function(event) {
      event.preventDefault;
      var parent=$(this).parent();
      var parents=$(this).parents("#addChildDiv");
      var len=parents.children().length;
      if(($(this).is(".up1") || $(this).is(".top1")) && parent.index()==0){
       return false;
      }else if(($(this).is(".down1") || $(this).is(".bottom1")) && parent.index()==len-1){
       return false;
      }
      switch (true) {
       case $(this).is(".up1"):
        var prev = parent.prev();
        parent.insertBefore(prev);
        break;
       case $(this).is(".down1"):
        var next = parent.next();
        parent.insertAfter(next);
        break;
       case $(this).is(".top1"):
        parents.prepend(parent);
        break;
       case $(this).is(".bottom1"):
        parents.append(parent);
        break;
      }
     });
 
 
//保存数据
var putFlag = false; //避免重复提交
function saveData(){
    if(putFlag == true){
        $.dialog.tips('禁止重复提交!',3,'alert.gif',function(){});
        return false;
    }
    
    $("#num").val(a);//设置提交的数量
    var d=$.dialog.tips('正在执行,请稍候...',600,'loading.gif');
    
    //var list=$("#addChildDiv li input[type='hidden']");  获取id:addChildDiv下的li标签的input标签的hidden类型
    var list = ",";
    for (var i=0;i<a;i  ){
        // 获取id:addChildDiv下的第i的li标签的input标签的hidden类型
        var zzz = $("#addChildDiv").find("li:eq(" i ")").find("input[type='hidden']").val();
        list = list   zzz  ","
    }
    
    
    //保存
    putFlag = true;
    $.ajax({
        type:'post',
        data:{"ids":list},
        url:'${root}/base/BaseAreaWorkSpace/orderChild.jspx?myId=' $("#myId").val(),
        async:false,
        dataType:"json",
        success:function(data){
            putFlag = false;
            $.dialog.tips(data.message,3,'alert.gif',function(){});
            closePop();
            //600ms后再加载数据
            setTimeout(function () { 
                dataLoad();
            }, 600);
            //d.close();
        }
    }) 
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持Devmax。

js实现按钮进行某行上移下移的更多相关文章

  1. html5 拖拽及用 js 实现拖拽功能的示例代码

    这篇文章主要介绍了html5 拖拽及用 js 实现拖拽,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  2. HTML5 input新增type属性color颜色拾取器的实例代码

    type 属性规定 input 元素的类型。本文较详细的给大家介绍了HTML5 input新增type属性color颜色拾取器的实例代码,感兴趣的朋友跟随脚本之家小编一起看看吧

  3. amazeui模态框弹出后立马消失并刷新页面

    这篇文章主要介绍了amazeui模态框弹出后立马消失并刷新页面,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  4. 移动HTML5前端框架—MUI的使用

    这篇文章主要介绍了移动HTML5前端框架—MUI的使用的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  5. amaze ui 的使用详细教程

    这篇文章主要介绍了amaze ui 的使用详细教程,本文通过多种方法给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  6. AmazeUI 模态窗口的实现代码

    这篇文章主要介绍了AmazeUI 模态窗口的实现代码,代码简单易懂,非常不错,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  7. ios – UIPopoverController出现在错误的位置

    所以我花了一些时间寻找答案,但到目前为止还没有找到任何答案.我正在尝试从UIInputAccessoryView上的按钮呈现弹出窗口.UIBarButtonItem我想显示popover来自定制视图,所以我可以使用图像.我创建这样的按钮:当需要显示popover时,我这样做:但我得到的是:弹出窗口看起来很好,但它应该出现在第一个按钮上时出现在第二个按钮上.然后我发现了这个问题:UIBarButto

  8. ios – 关闭UIBarButtonItem上的突出显示

    我正在尝试使用UIBarButtonItem在我的UIToolbar上添加标题.我使用简单的风格,看起来很好,但我似乎无法让它停止突出显示触摸.“突出显示时触摸”选项不适用于条形按钮项目.有没有快速简便的方法来做到这一点?

  9. 以编程方式调整iOS中的按钮大小

    我正在使用XCode4.6.1并开发iOS6.我在故事板上添加了一个按钮.我在我的实现文件ViewController.m中创建了一个插座:我尝试按如下所示更改按钮b1的属性(在同一个文件中:ViewController.m):当我在模拟器中运行应用程序时,按钮的alpha成功设置为0.5.但是,按钮的位置和大小不会改变.我尝试了各种方法来实现它.然而似乎没有任何作用.我想知道我做错了什么.我对O

  10. 如何在iOS / Swift的顶部导航栏中添加“继续”按钮

    我想在导航栏的右侧添加一个“继续”按钮.如何实现这一目标?我一直在尝试使用UIBarButtonItem上的一些方法,但无法使其正常工作.我迄今为止的最大努力是:但我在第一行遇到错误.它不喜欢“style”参数.我也试过了但没有运气.仍然停留在样式参数上.有任何想法吗?

随机推荐

  1. js中‘!.’是什么意思

  2. Vue如何指定不编译的文件夹和favicon.ico

    这篇文章主要介绍了Vue如何指定不编译的文件夹和favicon.ico,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  3. 基于JavaScript编写一个图片转PDF转换器

    本文为大家介绍了一个简单的 JavaScript 项目,可以将图片转换为 PDF 文件。你可以从本地选择任何一张图片,只需点击一下即可将其转换为 PDF 文件,感兴趣的可以动手尝试一下

  4. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  5. AngularJs上传前预览图片的实例代码

    使用AngularJs进行开发,在项目中,经常会遇到上传图片后,需在一旁预览图片内容,怎么实现这样的功能呢?今天小编给大家分享AugularJs上传前预览图片的实现代码,需要的朋友参考下吧

  6. JavaScript面向对象编程入门教程

    这篇文章主要介绍了JavaScript面向对象编程的相关概念,例如类、对象、属性、方法等面向对象的术语,并以实例讲解各种术语的使用,非常好的一篇面向对象入门教程,其它语言也可以参考哦

  7. jQuery中的通配符选择器使用总结

    通配符在控制input标签时相当好用,这里简单进行了jQuery中的通配符选择器使用总结,需要的朋友可以参考下

  8. javascript 动态调整图片尺寸实现代码

    在自己的网站上更新文章时一个比较常见的问题是:文章插图太宽,使整个网页都变形了。如果对每个插图都先进行缩放再插入的话,太麻烦了。

  9. jquery ajaxfileupload异步上传插件

    这篇文章主要为大家详细介绍了jquery ajaxfileupload异步上传插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  10. React学习之受控组件与数据共享实例分析

    这篇文章主要介绍了React学习之受控组件与数据共享,结合实例形式分析了React受控组件与组件间数据共享相关原理与使用技巧,需要的朋友可以参考下

返回
顶部