@model Gd.NetSign.Controllers.DTO.SysPamaterDTO
@{
ViewBag.Title = "SysPamatList";
//Layout = "~/Views/Masters/Frame.cshtml";
}
<script type="text/javascript">
//检索
function doSearch() { loading();
$.ajax({
type: "post",
url: '/Spfsz/SysPamatList?SysPamaterName=' + $('#SysPamaterName').val() + "&SysPamaterRemark=" + $('#SysPamaterRemark').val() + "&ParentKeyName=" + "@Model.ParentKeyName",
data: {},
dataType: "html",
error: function (msg) { unloading(); },
success: function (result) {
$("#List").html(result);
unloading(); }
}); }
//-->
//保存
function DoSave() {
loading("数据提交中...请稍后");
var previewOptions = {
url: "/Spfsz/SaveSysPamat?isOder=1&ParentKeyName=" + "@Model.ParentKeyName",
type: 'POST',
//data:_list: _list,
//beforeSubmit: submitCheck,
iframe: false,
success: function (result) {
unloading();
if (result.Success == true) { $.Ok(result.Msg, function () {
loading();
$.ajax({
type: "post",
url: "/Spfsz/SysPamatList?ParentKeyName=" + "@Model.ParentKeyName",
data: {},
dataType: "html",
error: function (msg) { unloading(); },
success: function (result) {
$("#List").html(result);
unloading(); }
});
});
}
if (result.Success == false) {
$.Error(result.Msg);
}
},
error: function () {
unloading();
}
};
$("#OperaForm").ajaxSubmit(previewOptions);
return false;
}
//保存
function DoSaveSingle() {
loading("数据提交中...请稍后");
var previewOptions = {
url: "/Spfsz/SaveSysPamat?ParentKeyName=" + "@Model.ParentKeyName",
type: 'POST',
//data:_list: _list,
//beforeSubmit: submitCheck,
iframe: false,
success: function (result) {
unloading();
if (result.Success == true) { $.Ok(result.Msg, function () {
loading();
$.ajax({
type: "post",
url: "/Spfsz/SysPamatList?ParentKeyName=" + "@Model.ParentKeyName",
data: {},
dataType: "html",
error: function (msg) { unloading(); },
success: function (result) {
$("#List").html(result);
unloading(); }
});
});
}
if (result.Success == false) {
$.Error(result.Msg);
}
},
error: function () {
unloading();
}
};
$("#OperaForm").ajaxSubmit(previewOptions);
return false;
} </script>
<style>
tr input {
border: hidden;
background-color: transparent;
width: 100%;
height: 20px;
margin-left: 2px;
} table tr td {
text-align: left;
}
</style> <div class="div_btnContainer">
<span>参数名:</span><input id="SysPamaterName" class="txt" type="text" value="@Model.SysPamaterName" />
<span>参数说明:</span><input id="SysPamaterRemark" class="txt" type="text" value="@Model.SysPamaterRemark" />
<input type="button" class="btn" value="检索" onclick="doSearch();" /> <input type="button" id="upMove" value="上移" @(Model.IsNullField == 1 ? "class=btn" : " class=btn_disable disabled=disabled") onclick="up_exchange_line();" />
<input type="button" id="DmMove" value="下移" @(Model.IsNullField == 1 ? "class=btn" : " class=btn_disable disabled=disabled ") onclick="down_exchange_line();" />
<input type="button" class="btn" value="保存" @(Model.IsNullField == 1 ? "onclick=DoSave()" : "onclick=DoSaveSingle()") />
</div>
<form id="OperaForm" method="post" action="" enctype="multipart/form-data">
<div class="form">
<table id="floorHouse" cellpadding="1" cellspacing="1" class="tabClass">
<thead>
<tr>
<th style="width: 20px" title="选择">选择</th>
<th style="width: 50px;" title="参数名">参数名</th>
<th style="width: 100px;" title="参数值">参数值</th>
<th style="width: 300px;" title="参数说明">参数说明</th> </tr>
</thead>
<tbody>
@{string line = "";
var listLength = Model.SysPamaterList.Count();
for (int i = 0; i < listLength; i++)
{
line = "line" + (i + 1);
<tr id="@line"> <td>
<input name="[@(i)].NodeIdx" id="subcheck" onclick="chk(this);" type="checkbox" value="@(i+1)" />
<input hidden="hidden" name="[@(i)].NodeIdx" id="NodeIdx" type="text" value="@(i+1)" />
</td>
<td title="@Model.SysPamaterList[i].KeyName" id="cknull">
<input type="text" id="KeyName" readonly="readonly" name="[@(i)].KeyName" value="@Model.SysPamaterList[i].KeyName" />
</td>
<td title="@Model.SysPamaterList[i].KeyValue" id="cknull">
<input type="text" id="KeyValue" name="[@(i)].KeyValue" value="@Model.SysPamaterList[i].KeyValue" />
</td>
<td title="@Model.SysPamaterList[i].KeyDis" id=" cknull">
<input type="text" id="KeyDis" readonly="readonly" name="[@(i)].KeyDis" value="@Model.SysPamaterList[i].KeyDis" />
<input type="text" id="IsNewNetSign" hidden="hidden" name="[@(i)].IsNewNetSign" value="@Model.SysPamaterList[i].IsNewNetSign" /> </td>
</tr>
}
}
</tbody>
</table> </div>
</form> <script language="javascript"> var currentStep = new Array();
var max_line_num = parseInt("@Model.SysPamaterList.Count()");
//上移
function up_exchange_line() {
if (!checks())
return;
//升序
currentStep.sort(function (a, b) { return a > b ? 1 : -1 });
for (var i = 0; i < currentStep.length; i++) {
if (currentStep[i] == 0 || currentStep[i] == null) {
continue;
}
else {
var upStep = currentStep[i] - 1;
if (upStep < 1 || $('#line' + upStep + ' input[type="checkbox"]').attr("checked")) {
continue;
}
//取值
var keynameNext = $("#line" + upStep + " input[id='KeyName']").val();
var keyvalueNext = $("#line" + upStep + " input[id='KeyValue']").val();
var KeyDisNext = $("#line" + upStep + " input[id='KeyDis']").val();
var IsNewNetSignNext = $("#line" + upStep + " input[id='IsNewNetSign']").val();
var keyname = $("#line" + currentStep[i] + " input[id='KeyName']").val();
var keyvalue = $("#line" + currentStep[i] + " input[id='KeyValue']").val();
var KeyDis = $("#line" + currentStep[i] + " input[id='KeyDis']").val();
var IsNewNetSign = $("#line" + currentStep[i] + " input[id='IsNewNetSign']").val();
//换值
$("#line" + upStep + " input[id='KeyName']").val(keyname);
$("#line" + upStep + " input[id='KeyValue']").val(keyvalue);
$("#line" + upStep + " input[id='KeyDis']").val(KeyDis);
$("#line" + upStep + " input[id='IsNewNetSign']").val(IsNewNetSign);
$("#line" + currentStep[i] + " input[id='KeyName']").val(keynameNext);
$("#line" + currentStep[i] + " input[id='KeyValue']").val(keyvalueNext);
$("#line" + currentStep[i] + " input[id='KeyDis']").val(KeyDisNext);
$("#line" + currentStep[i] + " input[id='IsNewNetSign']").val(IsNewNetSignNext);
//修改选中
$('#line' + upStep + ' input[type="checkbox"]').attr("checked", true);
$('#line' + currentStep[i] + ' input[type="checkbox"]').attr("checked", false);
currentStep[i] = upStep; } } }
//下移
function down_exchange_line() {
if (!checks())
return;
//倒序
currentStep.sort(function (a, b) { return a < b ? 1 : -1 });
for (var i = 0; i < currentStep.length; i++) {
if (currentStep[i] == "0" || currentStep[i] == null) {
continue; }
else { var nextStep = parseInt(currentStep[i]) + 1;
if (nextStep > max_line_num || $('#line' + nextStep + ' input[type="checkbox"]').attr("checked")) {
continue;
}
//取值
var keynameNext = $("#line" + nextStep + " input[id='KeyName']").val();
var keyvalueNext = $("#line" + nextStep + " input[id='KeyValue']").val();
var KeyDisNext = $("#line" + nextStep + " input[id='KeyDis']").val();
var IsNewNetSignNext = $("#line" + nextStep + " input[id='IsNewNetSign']").val();
var keyname = $("#line" + currentStep[i] + " input[id='KeyName']").val();
var keyvalue = $("#line" + currentStep[i] + " input[id='KeyValue']").val();
var KeyDis = $("#line" + currentStep[i] + " input[id='KeyDis']").val();
var IsNewNetSign = $("#line" + currentStep[i] + " input[id='IsNewNetSign']").val();
//换值
$("#line" + nextStep + " input[id='KeyName']").val(keyname);
$("#line" + nextStep + " input[id='KeyValue']").val(keyvalue);
$("#line" + nextStep + " input[id='KeyDis']").val(KeyDis);
$("#line" + nextStep + " input[id='IsNewNetSign']").val(IsNewNetSign);
$("#line" + currentStep[i] + " input[id='KeyName']").val(keynameNext);
$("#line" + currentStep[i] + " input[id='KeyValue']").val(keyvalueNext);
$("#line" + currentStep[i] + " input[id='KeyDis']").val(KeyDisNext);
$("#line" + currentStep[i] + " input[id='IsNewNetSign']").val(IsNewNetSignNext);
//修改选中
$('#line' + nextStep + ' input[type="checkbox"]').attr("checked", true);
$('#line' + currentStep[i] + ' input[type="checkbox"]').attr("checked", false);
currentStep[i] = nextStep; }
}
}
//增加减少id值
function chk(box) {
if ($(box).attr("checked") == "checked") {
//currentStep.push($(box).parent().parent().find("td").eq(0).text())
currentStep.push(parseInt($(box).val()));
}
else { for (var i = 0; i < currentStep.length; i++) {
if (currentStep[i] == $(box).val()) {
currentStep.remove(i);
//.remove(i);
} } } }
Array.prototype.remove = function (dx) {
if (isNaN(dx) || dx > this.length) { return false; }
for (var i = 0, n = 0; i < this.length; i++) {
if (this[i] != this[dx]) {
this[n++] = this[i]
}
}
this.length -= 1
}
function checks() {
var chk_value = [];
$('input:checked').each(function () {
chk_value.push($(this).val());
});
if (chk_value.length <= 0) {
//alert("请选择一条数据");
$.Warning('请选择一条数据!');
return false; }
return true;
}
</script>

jQuery控制表格行移动,序号不变的更多相关文章

  1. jQuery实现表格行的动态增加与删除(改进版)

    之前写过一个简单的利用jQuery实现表格行的动态增加与删除的例子,有些人评论说"如果表格中是input元素,那么删除后的东西都将自动替换,这样应该是有问题的,建议楼主改进!",故 ...

  2. AppBoxPro - 细粒度通用权限管理框架(可控制表格行内按钮)源码提供下载

    特别声明: 提供的源代码已经包含了 AppBoxPro 的全部源代码,用 VS2012 打开项目后,直接 Ctrl+F5 可以运行起来(默认使用VS自带的LocalDB数据库). FineUIPro是 ...

  3. jQuery实现表格行上移下移和置顶

    jQuery实现表格行上移下移和置顶 我们在操作列表数据的时候,需要将数据行排列顺序进行调整,如上移和下移行,将行数据置顶等,这些操作都可以在前端通过点击按钮来完成,并且伴随着简单的动态效果,轻松实现 ...

  4. jquery更改表格行顺序实例

    使用jquery写的更改表格行顺序的小功能 表格部分: 复制代码代码如下: <table class="table" id="test_table"> ...

  5. 用jquery控制表格奇偶行及活动行颜色

    虽然jquery流行已经很多年了,一直都感觉很难,也没有花时间去学习它,只是偶尔哪天心血来潮了去看一点点,时隔多日又会忘得一干二净.最近用到表格奇偶行不同色,不得不去再看jquery,虽然感觉还是难, ...

  6. jQuery实现表格行的动态增加与删除 序号 从 1开始排列

    <table id="tab" border="1" width="60%" align="center" sty ...

  7. jQuery学习笔记(6)--复选框控制表格行高亮

    <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> &l ...

  8. 使用jquery扩展表格行合并方法探究

    1.前言 最近项目中用到一个表格中对于相同内容的数据进行行合并的需求,本来想从网上找个现成的,省的自己再造轮子.于是就开始谷歌了...不过在搜索的过程中,发现找到的工具类很多都有一个前提,就是该表格中 ...

  9. jQuery实现表格行的动态增加与删除

    删除之前删除2行后: 1<script> 8 $(document).ready(function(){ 9 //<tr/>居中 10 $("#tab tr" ...

随机推荐

  1. C#程序基础

  2. Java中不定参的使用规则

    Java中有时候会使用到不定参数,它的使用规则有2项: 一个方法中只能使用一个不定参数. 不定参数必须是方法中最后一个参数. 不定参数在传入的过程中会行成一个数组传入,如果不会放在最后一个,虚拟机无法 ...

  3. Laravel生成编译文件权限问题

    sudo -unobody ./artisan optimize # 避免`fpm`账户无权限修改缓存文件的问题.这里的`nobody`改成实际的`fpm`用户名.

  4. 生成 Qt 文档

    个人总结    从命令行进入Qt安装目录     设置环境变量     set path=D:/mingw32/bin;D:/Qt/5.0.0/qtbase/bin;D:/icu/bin;D:/icu ...

  5. 各种编码之间的关系以及getBytes的使用

    编码基础知识参考http://my.oschina.net/chape/blog/201725 我对此作了简单的概括 iso8859-1 (通常叫做Latin-1) 属于单字节编码,最多能表示的字符范 ...

  6. bzoj3156防御准备

    3156: 防御准备 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 1349  Solved: 605[Submit][Status][Discuss ...

  7. unity3d和php后台简单交互--一

    unity3d开发时,用PHP作为后台是个不错的选择.对一些数据吞吐量不是很大的游戏,比如某个游戏的排名,登录等等,一般的php程序能够胜任了,并且php语言简单,开发容易对数据库尤其是mysql的支 ...

  8. EFI Shell 命令说明

    EFI Shell 命令说明 引导命令 — EFI Shell 与 nPartition 引导有关的命令. autoboot         设置(查看)自动引导超时变量. bcfg 显示(或修改)驱 ...

  9. 多标记学习--Learning from Multi-Label Data

    传统分类问题,即多类分类问题是,假设每个示例仅具有单个标记,且所有样本的标签类别数|L|大于1,然而,在很多现实世界的应用中,往往存在单个示例同时具有多重标记的情况. 而在多分类问题中,每个样本所含标 ...

  10. 子字符查找KMP算法 - 子串自匹配索引表

    public static int[] kmpTable(char[] seq) { int[] tbl = new int[seq.length]; tbl[0] = 1; for (int i = ...