是否存在交换表行的任何快捷方式,包括这些行中输入元素的属性。
编辑:实际上我不需要交换属性,但我需要在这些内部交换值。 我的系统在属性和保存顺序之间有一些连接。 属性就像
a[0],b[0],c[0] etc.,
a[1],b[1],c[1] etc.,
所以在交换之后我需要交换值。
答案 0 :(得分:1)
编辑没有快捷方式,因为我从未见过用户界面突然将用户输入的数据保存在其他地方的UI。
示例:我有一个表格,您可以在其中输入您的姓名。由于人们首先要输入值,我可以在我的UI中添加一个首选项,允许他们交换这两行。但姓氏(UI)仍然进入姓氏(数据库),姓氏(UI)进入姓氏(数据库)。切换行不会突然将姓氏与姓氏联系起来。
不要交换元素的属性,只需更改DOM中表行的顺序:
row.insertBefore(row.prev());
移动所有内容并保持自定义属性不变。
答案 1 :(得分:0)
我没有获得任何快捷方式,但下面的代码给出了我想要的结果。
jQuery("body").on("click",".up,.down",function(){
var current_row = $(this).parents("tr:first");
if ($(this).is(".up")) {
if(current_row.prev().find("th").length==0){ //If this is title row
row_need_to_replace = current_row.prev();
}
} else {
row_need_to_replace = current_row.next();
}
if(row_need_to_replace.find("input,textarea").length>0)
{
var i=0;
current_row.find(":input").each(function(){
input_need_to_replace=row_need_to_replace.find(":input :eq("+i+")");
temp = input_need_to_replace.val();
input_need_to_replace.val($(this).val());
$(this).val(temp);
i++;
});
}
});