繁体   English   中英

如何使用jQuery更新HTML表格单元格

[英]How to update HTML table cell using jquery

球队,

您能否告诉我如何使用jquery更新单元格?

<table id='lop'>
    <thead id='loph'>
        <tr>
            <td class='type'>Type</td>
            <td class='name'>Name</td>
        </tr>
    </thead>
    <tbody id='lopb'>
        <tr id='1'>
            <td class='type'>W</td>
            <td class='name'>ZZZ</td> 
        <tr>
        <tr id='2'>
            <td class='type'>W</td>
            <td class='name'>YYY</td> 
        <tr>        
    </tbody>
</table>

我想将第二行名称从YYY更新为XXX。
请,答案应基于html中使用的ID和类名,而不是基于使用jquery时的数字/顺序。

另外下面的解决方案不起作用,

$('#lop #2 .name').html('XXX')  //Working

如果是

var rowID = '#2';
$('#lop rowID .name').html('XXX') //Not Working

试试下面的代码,它使用html方法更新代码:

$('#lop #2 .name').html('XXX')

您可以看一下这个小提琴: http : //jsfiddle.net/cWQRY/

如果要使用变量,可以尝试以下代码:

var rowID = '#2';
$('#lop '+rowID+' .name').html('XXX')

确保您不使用整数,因为id使用字符串。

 <tr id='id2'>

为什么:

1)违反W3C规范。

2)这对SEO有害。

3)可能存在服务器端脚本问题

jQuery的

$('#id2 .name').text('XXX')

尝试这个:

$('#2 .name).text('XXX');
$('#2 .name').html('XXX');

检查js小提琴: http : //jsfiddle.net/Xyn9e/7/

Try this:

* {
    font-family:Consolas
}

.editableTable {
    border:solid 1px;
    width:100%
}

.editableTable td {
    border:solid 1px;
}

.editableTable .cellEditing {
    padding: 0;
}

.editableTable .cellEditing input[type=text]{
    width:100%;
    border:0;
    background-color:rgb(255,253,210); 
}

Example: http://mrbool.com/how-to-create-an-editable-html-table-with-jquery/27425

在Table中,在每个tr和td中使用ID并不是一个好习惯,最好使用index。

$('#lopb tr').filter(':eq(1) td.name').text('XXX');
 $('#lop').each(function(){
                var $row = $(this).parents('tr');                  
                alert($row.find('td:eq(0)').html());
                alert($row.find('td:eq(1)').html());
            });

请指定您何时要执行更改单元格数据的操作。

如需更改,请尝试,

$('#2 .name').html('XXX') 

谢谢Manikandan

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM