如何实现上移下移功能

z415353144 2010-05-28 02:46:22
编号 内容 操作按钮
1 b 上移|下移
2 a 上移|下移
3 d 上移|下移
4 c 上移|下移
...全文
1477 34 打赏 收藏 转发到动态 举报
写回复
用AI写文章
34 条回复
切换为时间正序
请发表友善的回复…
发表回复
y_keven 2012-12-14
  • 打赏
  • 举报
回复
还是没学会怎么写。。。楼主会了不??会了指导一下呗
小橙_ 2012-06-05
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 的回复:]

1。在数据库添加一个字段作为排序使用
2。以正序为排序规则,值越越大越靠前如10,9,8,7,
3.上调的8的时候 先将前一个行的排序-1,本身+1
4。下调的时候,比如8就是后一行的排序+1,本身-1
[/Quote]能更具体点吗
mrslikelin 2011-12-14
  • 打赏
  • 举报
回复
求 内型表中的sort字段 我要在后台实现 点击上移/下移 我想要代码

我也要 答案啊
tkscascor 2010-05-31
  • 打赏
  • 举报
回复
[Quote=引用 25 楼 jocklyhu 的回复:]
看了很多楼上说的,都说用数据库字段!我觉得这点从设计上面来说就行不通!一个页面的样式需要在数据库中增加字段,会导致大量的数据冗余,而且要是以后页面的要求发生变化,那就又需要在数据库中设置字段咯。
[/Quote]
怎么就多了个数据冗余呢? 一个int型站4字节, 一条记录最多可以可以存放8kb的数据, 其次, 这种 上下移动效果, 肯定是移动之后需要保存到数据库的, 当然你可以选择使用js来实现这种上下移动效果, 可是下一次打开, 你是不是要重新指定排序的顺序?
qiao6174 2010-05-31
  • 打赏
  • 举报
回复
期待答案
阿非 2010-05-31
  • 打赏
  • 举报
回复
huangmin3956 2010-05-31
  • 打赏
  • 举报
回复
等待。。。
z415353144 2010-05-31
  • 打赏
  • 举报
回复
明天结贴
z415353144 2010-05-31
  • 打赏
  • 举报
回复
请问下有没有哟sqlsever 的脚本存储过程转mysql脚本的工具或方法
jocklyhu 2010-05-28
  • 打赏
  • 举报
回复
看了很多楼上说的,都说用数据库字段!我觉得这点从设计上面来说就行不通!一个页面的样式需要在数据库中增加字段,会导致大量的数据冗余,而且要是以后页面的要求发生变化,那就又需要在数据库中设置字段咯。
wuyq11 2010-05-28
  • 打赏
  • 举报
回复
listbox实现很简单
gridview 也可实现
function UpOrDownOption(Sel,direction)
{
var Op=Sel.options;
var selectedNub=0;
for(var i=0;i<Op.length;i++)
{
if(Op[i].selected)
{
selectedNub++;
}
}
if(selectedNub==0)
{
alert("请选择一项!");
return;
}
if(selectedNub>1)
{
alert("只能选择一项!");
return;
}
i=Sel.selectedIndex;
var selectedOp=document.createElement("option");
selectedOp.text=Op[i].text;
selectedOp.value=Op[i].value;
selectedOp.selected=true;

if(direction=="up")
{
if(i!=0)
{
Sel.options.add(selectedOp,i-1);
Sel.options.remove(i+1);
}

}
if(direction=="down")
{
if(i!=Op.length-1)
{
Sel.options.add(selectedOp,i+2);
Sel.options.remove(i);
}
}

}
tanbin_0521 2010-05-28
  • 打赏
  • 举报
回复
1 在数据库添加一个字段作为排序使用
2 用存储过程实现该功能: 根据你选中的编号(a)查询它的排序字段-1,编号(a-1)的排序字段 +1
QQ865926998 2010-05-28
  • 打赏
  • 举报
回复
好多人问过这个问题
haoxiaozhenfang 2010-05-28
  • 打赏
  • 举报
回复
不是很明白你要实现什么功能
lonenan 2010-05-28
  • 打赏
  • 举报
回复
表设计增加排序编号列,数据按sortnum排序

编号 内容 sortnum

点击上移下移时修改sortnum即可
幻想的天涯 2010-05-28
  • 打赏
  • 举报
回复
就是在数据库中给一列标识这几个的位置,点上移的时候判读是否是第一个,如果不是改变位置,其他的也要改变一下位置,如果是的话提示一下已经到顶端了;下移也是同样的道理,如果需要看到话,联系我QQ:402127440
幻想的天涯 2010-05-28
  • 打赏
  • 举报
回复
这个不是很难,我做B/S的时候做过一个菜单的上下移动
程序漫步 2010-05-28
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 ynsky 的回复:]
最简单就是在数据库中加一个排序字段.上移下移其实就是修改那个字段!
[/Quote]

我之前就是用这方法错,, 怎么简单就怎么做吧~~~
yan267 2010-05-28
  • 打赏
  • 举报
回复
pkeyTable=表。
pkey 主键字段
pkeyCode 主键值

pkeysql 查询的条件
typeid 升序还是降序
seqfilename 排序的字段。


public static string PrintSortSQl(string pkeyTable, string pkey, string pkeyCode, string pkeysql, string typeid,string seqfilename)
{
string InsertSQL = "";
InsertSQL = InsertSQL + "declare @currPkey as varchar(50),@prePkey as varchar(50),@nextPkey as varchar(50)";
InsertSQL = InsertSQL + " " + " declare @currSeq as int,@preSeq as int,@nextSeq as int";
InsertSQL = InsertSQL + " " + "set @currPkey='" + pkey + "'";
InsertSQL = InsertSQL + " " + "select @currSeq=" + seqfilename + " from " + pkeyTable + " where " + pkeyCode + "=@currPkey";
InsertSQL = InsertSQL + " " + " select @nextSeq=" + seqfilename + ",@nextPkey=" + pkeyCode + " from " + pkeyTable + " where " + pkeyCode + "=(select top 1 A." + pkeyCode + " from " + pkeyTable + " AS A where A." + seqfilename + ">@currSeq " + pkeysql + " order by a." + seqfilename + " asc)";
InsertSQL = InsertSQL + " " + " select @preSeq =" + seqfilename + ",@prePkey=" + pkeyCode + " from " + pkeyTable + " where " + pkeyCode + "=(select top 1 A." + pkeyCode + " from " + pkeyTable + " AS A where A." + seqfilename + "<@currSeq " + pkeysql + " order by a." + seqfilename + " desc)";

if (typeid == "1")
{
InsertSQL = InsertSQL + " " + "update " + pkeyTable + " set " + seqfilename + " = @preSeq where " + pkeyCode + " = @currPkey";
InsertSQL = InsertSQL + " " + "update " + pkeyTable + " set " + seqfilename + " = @currSeq where " + pkeyCode + " =@prePkey";


}
else
{
InsertSQL = InsertSQL + " " + "update " + pkeyTable + " set " + seqfilename + " = @nextSeq where " + pkeyCode + " = @currPkey";
InsertSQL = InsertSQL + " " + "update " + pkeyTable + " set " + seqfilename + " = @currSeq where " + pkeyCode + " =@nextPkey";

}


return InsertSQL;

}

z415353144 2010-05-28
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 xiangchengboy 的回复:]
本人刚做了个类似的功能,如有需要可发私信告诉我邮箱号。
[/Quote]
我邮箱:hnxh_chauvet@sina.com.cn
加载更多回复(14)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧