繁体   English   中英

用tr动态填充表格

[英]Dynamically populate table with tr

我在输入中有两个值。 enc_rowsenc_slots

<input type=text size=2 name=enc_rows id=enc_rows value='".$enc_data["enc_rows"]."'>
<input type=text size=2 name=enc_slots id=enc_slots value='".$enc_data["enc_slots"]."'>

我需要根据两个字段中所述的数目动态地“绘制”行数和插槽数。

echo "
<table id='enc_square'>
<tbody id='tbody_data'>
";
for ($y=0; $y < $t_row["enc_rows"]; $y++)
{
    echo "<tr class='enc_tr' id='".$y."'>";
for ($x=0; $x < $t_row["enc_slots"]; $x++)
    echo "<td class='enc_td' id='".$x."'></td>";
echo "</tr>";
}
echo "
</tbody>
</table>
";

尝试了一些简单的CSS和jquery:

<style>
.enc_tr{
height:100px;
width: 100px;
}
.enc_td{
height:100px;
width: 100px;
color:#000;
border:1px #000 solid !important;
}
#enc_square{
position:static;
background-color:#aaa;
color:#000;
border:1px #000 !important;'
}
</style>

<script type=text/javascript language='javascript'>
$(document).ready(function() {
$('#enc_rows').bind('change', function() {
    $('#tbody_data').empty();
    var height = $(this).val();
    $('#enc_square').css('height', 100 * height);
    for(x=0;x < height;x++)
        $('#tbody_data').last().after('<tr class=\'enc_tr\' id=' + x +'></tr>');
});
$('#enc_slots').bind('change', function() {
    var width = $(this).val();
    var slotCount = $('#enc_square td').length / $('#enc_rows').val();
    $('#enc_square').css('width', 100 * width);
    $('#enc_square > td:last').appendTo('<td class=\'enc_td\' id=' + (slotCount+1) +'></td>');
});
});
</script>

当我将enc_rows设置为1或3时,它将完全删除tbody。 (并删除正方形)

解决了:

$('#enc_rows').bind('change', function() {
    var slotCount = $('#enc_slots').val();
    var height = $(this).val();
    $('#enc_square tbody').empty();
    $('#enc_square').css('height', 100 * height);
    for(var y=1; y <= height; y++)
        $('#enc_square tbody').append('<tr class=\'enc_tr\' id=' + y +'></tr>');
    for (var x=1; x <= slotCount; x++)
        $('#enc_square tbody tr').append('<td class=\'enc_td\' id=' + x +'></td>');
});

暂无
暂无

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

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