单击行后如何获取值

时间:2014-08-02 04:42:38

标签: jquery jsp servlets

我想在选定的行中获取第三列。

我的jQuery是

  $(document).ready(function() {
        $(function() {
            $("#dialog").dialog({
                autoOpen: false
            });
            $(".tweetButton").on("click", function() {
                $("#dialog").dialog("open");
            });
        });

        $("#submit").click(function() {
            var MyRows = $('table#ForChangingTweet').find('tr').click(function() {
            });
            var MyIndexValue = "hai";
            for (var i = 0; i < MyRows.length; i++) {
                MyIndexValue = $(MyRows[i]).find('td:eq(2)').html();

            }
            alert(MyIndexValue);
        });
    });

而我的桌子是

    <table cellspacing="20" class ="tweetTable" id="ForChangingTweet" >
        <caption>Tweets</caption>
        <% while(rs.next()){ %>
        <tr >
            <td><%=rs.getString(1)%></td>
            <td><%=rs.getString(2)%></td>
            <td><%=rs.getString(3)%></td>
            <td><input type="button" class="tweetButton" value="Edit Tweet" /></td>
        </tr>
        <% } %>
    </table>

我的程序工作正常,但jQuery中的循环遍历第三列下的所有值,但我想要第三列值,我将点击该按钮。在表中,每行都有一个按钮,因为我已经给出了代码。当o点击该按钮时,它应该给出该行的第三个<td>,它应该通过alert(MyIndexValue);提醒

有人能告诉我怎么做到的吗?

<div id="dialog">
    <form method="post">
        <label>New Tweet:</label>
        <input type="text" name="name"><br/>
        <input type="submit" id="submit" value="Submit" /><input type="submit" value="Delete" />
    </form>
</div>

上面是我的对话框,当我点击“编辑推文”时,该对话框将会打开。按钮

有人可以帮助我得到这个问题的答案吗?并没有得到任何解决方案。

1 个答案:

答案 0 :(得分:0)

你点击#submit但是有一个.tweetButton - 这是什么? -

如果推文按钮是

$(this).parent().prev().text();

如果您想点击该行并获取第3个单元格,请尝试

$(this).children().eq(3).text()

此外,如果您希望在单击提交时进行事件处理,则需要使用event.preventDefault()

看看这里

现在有一些jQuery UI错误,但它让你知道我的意思

http://jsfiddle.net/mplungjan/qG67t/

var $currentTweet;
$(function () {
    $("#dialog").dialog({
        autoOpen: false
    });
    $(".tweetButton").on("click", function () {
        $currentTweet=$(this);
        $("#dialog").dialog("open");
    });
});

$("#tweetForm").on("submit",function (e) {
    e.preventDefault()
    $("#dialog").close();
    var MyIndexValue = $currentTweet.parent().prev().text();
    alert(MyIndexValue);
});