使用jquery获取tds的值

发布于 2024-12-29 04:55:29 字数 1090 浏览 1 评论 0原文

我正在使用 jquery 1.6.4 并且我有一个表。最初在表中,用户仅由一行和几列呈现。然后,我让用户通过这样做添加尽可能多的行,

$('.add').live('click', function(e){

        e.preventDefault();
        var $parentRow = $(this).parents('tr');
        $parentRow.clone().insertAfter($parentRow);
        $parentRow.next().find('input').val('');
        $(this).replaceWith('<a href="#" class="delete">-</a>');
    });

我还让他们动态删除行,

$('.delete').live('click', function(e){
        alert("removing");
        e.preventDefault();
        $(this).parents('tr').remove();
    });

但是现在我希望收集他们在这些列中输入的值。我不确定当它们点击“提交”按钮时如何收集这些值,因为在我的视图源中我看到的只是这个

<tr>
<td class="actions"><a href="#" class="add">+</a></td>
<td><input type="text"></input></td>
<td><input type="text"></input></td>
<td><input type="text"></input></td>
<td><textarea rows="1"></textarea></td>
</tr>

在页面源中它只显示一行,而在我的视图中我肯定看到添加了三行。不确定我缺少什么以及如何获取这些值

I am using jquery 1.6.4 and I have a table. Initially in the table, a user is presented by only one row and a few columns. I, then, let users add as many rows as they would like using by doing this

$('.add').live('click', function(e){

        e.preventDefault();
        var $parentRow = $(this).parents('tr');
        $parentRow.clone().insertAfter($parentRow);
        $parentRow.next().find('input').val('');
        $(this).replaceWith('<a href="#" class="delete">-</a>');
    });

I also let them delete the rows on fly doing this

$('.delete').live('click', function(e){
        alert("removing");
        e.preventDefault();
        $(this).parents('tr').remove();
    });

However now I want the values that they are entering in these columns to be collected. I am not sure how to collect those values when they hit submit button as in my view source all I see is this

<tr>
<td class="actions"><a href="#" class="add">+</a></td>
<td><input type="text"></input></td>
<td><input type="text"></input></td>
<td><input type="text"></input></td>
<td><textarea rows="1"></textarea></td>
</tr>

In the page source it shows only one row where as in my view I definitely see three rows added. Not sure what am I missing and how to get the values

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

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

发布评论

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

评论(2

圈圈圆圆圈圈 2025-01-05 04:55:29

您没有 id,因此很难判断您实际收集的内容,但要获取静态和动态输入的值,您可以使用以下命令:

//submit code
$('input[type=submit]').click(function(){
    $('table input').each(function(index,item){
        //for testing you could just output to a div
        //$('#output').append($(this).val());
    });

});

You don't have ids so it will be difficult to tell what you are actually collecting, but to get the values of the inputs, both static and dynamic, you can use this:

//submit code
$('input[type=submit]').click(function(){
    $('table input').each(function(index,item){
        //for testing you could just output to a div
        //$('#output').append($(this).val());
    });

});
迎风吟唱 2025-01-05 04:55:29

据我所知,您的输入字段没有名称,因此当按下提交时您不会得到太多信息。

此外,您不会在视图源中看到 DOM 更新。查看源代码只会向您显示页面首次加载时的样子。
要获得页面的实时视图,您可以使用 FireBug、FireFox,或者如果您使用的是 Google Chrome,则“查看”菜单下有一些开发人员工具,您可以使用它们来查看 html 的实时外观。

From what I can tell, your input fields don't have names, so you're not going to get much when submit is pressed.

Also, you won't see DOM updates in your view source. View source will only show you what the page looked like when it first loaded.
To get a live view of the page, you can either use FireBug, for FireFox, or if you're using Google Chrome, there are developer tools under the "View" menu that you can use to see how the html looks live.

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