jquery 点击编辑按钮 当前行tr 中的td 全部 变为input
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery 点击编辑按钮 当前行tr 中的td 全部 变为input相关的知识,希望对你有一定的参考价值。
对的 这样做完全没有任何意义,但是我知道你的意思,就是能让表格td变成可编辑的input,可以这样 在td里面在嵌套一个span标签用于存放数据,当单击span标签的时候 在替换成input标签就可以了 参考技术A js代码:
$(".edit").click(function()
var t_this = $(this);
var list=$(t_this).parent().parent().find("td:lt(2)");
$.each(list,function(i,obj)
$(obj).html("<input type='text' value='"+$(obj).text()+"'/>");
);
);
html代码:
<table>
<tr>
<td>1</td>
<td>2</td>
<td><input type="button" class="edit" value="编辑"/></td>
</tr>
</table>
大致上的代码就是这样了,希望对你有所帮助。追问
大致上的代码就是这样了??
是啊,你可以按照你自己的需求进行修改啊。以下代码仅供参考:
html代码:
1
2
js代码:
$(document).ready(function ()
$(".edit").live("click", function ()
var t_this = $(this);
var list = $(t_this).parent().parent().find("td:lt(2)");
var html = encodeURIComponent($(t_this).parent().parent().html());
$.each(list, function (i, obj)
$(obj).html("");
);
$(t_this).parent().html("");
);
$(".save").live("click", function ()
var t_this = $(this);
var list = $(t_this).parent().parent().find("td :input[type='text']");
$.each(list, function (i, obj)
$(obj).parent().html($(obj).val());
);
$(t_this).parent().html("");
);
$(".cancel").live("click", function ()
$(this).parent().parent().html(decodeURIComponent($(this).attr("html")));
);
);
$('#save').hide();
$('#edit').click(function()
$(this).closest('td').siblings().html(function(i,html)
return '<input type="text" value='+html+' />';
);
$(this).hide();
$('#save').show();
)
)
<table id="tab">
<tr><td>td1</td><td>td2</td><td><button id="edit">edit</button><button id="save">save</button></td></tr>
</table> 参考技术C 这样有意义嘛,tr中td没了,也就是表格的结构被破坏了
jQuery:点击按钮删除最近的内容需要什么
我有一个HTML表,其中包含一个TH行和几个动态添加的TR。每个TR在最后一列中都有一个按钮。
我需要什么才能通过点击按钮将最近的TR从表中删除?我尝试使用$(this).closest.remove()
,但这没有用,所以我想我需要在这里添加ID或其他东西。
基本示例表如下所示:
<table class='tableClass'>
<tbody>
<th>
<td>Text</td><td>Text</td><td>Text</td>
</th>
<tr>
<td>Text</td><td>Text</td><td><button type='button' class='btnClass'>Delete</button></td>
</tr>
<tr>
<td>Text</td><td>Text</td><td><button type='button' class='btnClass'>Delete</button></td>
</tr>
<tr>
<td>Text</td><td>Text</td><td><button type='button' class='btnClass'>Delete</button></td>
</tr>
</tbody>
</table>
你需要给closest
函数一个选择器。试试这个:
$('.btnClass').click(function() {
$(this).closest('tr').remove();
});
此外,您的HTML无效,因为th
应该是tr
的孩子:
<table class='tableClass'>
<tbody>
<tr>
<th>Text</th>
<th>Text</th>
<th>Text</th>
</tr>
<tr>
<td>Text</td>
<td>Text</td>
<td>
<button type='button' class='btnClass'>Delete</button>
</td>
</tr>
<tr>
<td>Text</td>
<td>Text</td>
<td>
<button type='button' class='btnClass'>Delete</button>
</td>
</tr>
<tr>
<td>Text</td>
<td>Text</td>
<td>
<button type='button' class='btnClass'>Delete</button>
</td>
</tr>
</tbody>
</table>
您可以使用.closest( selector )
正确地执行此操作:
$(this).closest('tr').remove();
实际上在你的代码中:
$(this).closest.remove()
___^___
你缺少开括号和右括号()
和选择器tr
。
$(".btnClass").click(function(){
$(this).parents('tr').remove();
});
从您的HTML代码看起来您想删除父TR,试试这个
$(".btnClass").click(function(){
$(this).parents("tr:first").remove();
});
以上是关于jquery 点击编辑按钮 当前行tr 中的td 全部 变为input的主要内容,如果未能解决你的问题,请参考以下文章
js 表格的每一行都有一个按钮 点击按钮修改当前行某一列的信息