动态显示/添加

发布于 2024-10-03 02:35:09 字数 889 浏览 3 评论 0原文

我有这样的代码:

<table id="SomeTable">
<tr>
    <td>Rows:</td>
    <td><select name="Rows" id="Rows">
                        <option value="1">1</option>
                        <option value="2">2</option>
                        <option value="3">3</option>
                        <option value="4">4</option>
                        <option value="5">5</option>
                    </select></td>
</tr>
<tr>
    <td>#1</td>
    <td><input type="text"></td>
</tr>
......
<tr>
    <td>#5</td>
    <td><input type="text"></td>
</tr></table> 

是否可以以某种方式动态显示下拉列表中选择的行数?并使用 JQuery 在第一行或每行添加当前数字?

哪种方式最好解决这个问题?是否可以在删除/添加这些 tr 时为其设置动画?

/米

I have this code:

<table id="SomeTable">
<tr>
    <td>Rows:</td>
    <td><select name="Rows" id="Rows">
                        <option value="1">1</option>
                        <option value="2">2</option>
                        <option value="3">3</option>
                        <option value="4">4</option>
                        <option value="5">5</option>
                    </select></td>
</tr>
<tr>
    <td>#1</td>
    <td><input type="text"></td>
</tr>
......
<tr>
    <td>#5</td>
    <td><input type="text"></td>
</tr></table> 

Is it possible to somehow dynamically show the number of rows selected in the droplist? And add the current number in the first or each row using JQuery?

Which way is the best to solve this? And is it possible to animate those tr's as they are removed/added?

/M

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

蓝戈者 2024-10-10 02:35:09

您可以使用 :gt() 选择器,如下所示:

$("#Rows").change(function() {
  $("#SomeTable tr").show().filter(":gt(" + $(this).val() + ")").hide();
});

它是一个基于 0 的索引,但由于下拉列表本身在顶部有一个额外的行,因此效果很完美。另一个稍微干净的替代方案是 .slice(),如下所示

$("#Rows").change(function() {
  $("#SomeTable tr").show().slice(parseInt($(this).val(), 10)).hide();
});

:动画,你可以做一些淡入淡出,但是在 IE 中对表行进行动画处理尤其令人讨厌,我会远离它。

You can use the :gt() selector, like this:

$("#Rows").change(function() {
  $("#SomeTable tr").show().filter(":gt(" + $(this).val() + ")").hide();
});

It's a 0-based index, but since you have an extra row up top with the drop down itself, this works out perfect. Another slightly cleaner alternative is .slice(), like this:

$("#Rows").change(function() {
  $("#SomeTable tr").show().slice(parseInt($(this).val(), 10)).hide();
});

For the animating, you could do some fading, but animating table rows in particular is nasty in IE, I'd stay away from it.

简美 2024-10-10 02:35:09
$('#Rows').change(function() { 
    alert($(this).val()); 
});

我不确定你的意思,你是否试图根据选择框的值添加 n 个元素?

$('#Rows').change(function() { 
    alert($(this).val()); 
});

I'm not sure what you mean, are you trying to add n numbers of element based on the select box's value?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文