jQuery-JTable:为行添加click事件?

Jam*_*ter 11 jquery jquery-ui spring-mvc jquery-jtable

我必须按照代码来显示我的用户表,这是由JTable实现的.

<script type="text/javascript">
    $(document).ready(function() {              
        $('#userTableContainer').jtable({
            title: 'Users',
            selecting: false,
            paging: true,
            pageSize: 15,
            sorting: true,
            addRecordButton: false,
            saveUserPreferences: false,
            create: false,
            edit: false,
            actions: {
                listAction: 'user/getUsers.htm',
            },
            fields: {
                username: {
                    title: 'username'
                },
                firstname: {
                    title: 'firstname'
                },
                lastname: {
                    title: 'lastname'
                },
                company: {
                    title: 'company'
                }
             }
        });
        $('#userTableContainer').jtable('load');              
    });    

</script>

<div id="content">
    <h1>Users</h1>      

    <br />
    <div id="userTableContainer">

    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

是否可以为每一行添加自定义操作事件?这样我就可以向我的控制器提交像"user/showUser.htm"这样的请求了.

Jul*_*lle 12

这应该可以帮助你:

$('#userTableContainer').jtable({
    ....
    recordsLoaded: function(event, data) {
        $('.jtable-data-row').click(function() {
            var row_id = $(this).attr('data-record-key');
            alert('clicked row with id '+row_id);
        });
    }
});
Run Code Online (Sandbox Code Playgroud)

  • @ user1334573自从我使用jtable以来已经很久了.尝试在`recordsLoaded`函数中调用`console.log(data)`,看看可以使用哪些数据.我预感到所有记录都可以在`data`对象中找到.函数`getRowByKey()`也可以派上用场.. http://www.jtable.org/apireference#met-getRowByKey (2认同)
  • @ user1334573我相信它应该只是`data.company`.或等待它看起来像一个数组.试试`data [0] .company`,这应该会让你回到公司的第一行.如果你想要一个简单的for循环,你可以迭代所有行. (2认同)