使用javascript更改表行名称属性

时间:2012-06-07 13:31:58

标签: javascript jquery tablednd

嘿,我想在行从一个组拖到另一个组后更改表的名称属性。我得到要更改的name属性的行和目标名称。但是我的javascript函数没有改变行名 这是我到目前为止所尝试的

<script type="text/javascript">
        $(document).ready(function() {
            $('#sort').tableDnD({
                onDrop: function(table, row) {
                    var patent_id = row.id;
                    var target_group_id = getpreviousSiblingName(row);
                    var data = {PID:patent_id, TGID:target_group_id};
                    **changename(patent_id,target_group_id);**
                    $.ajax({
                        type: "POST",
                        data: data,
                        url:"{{ path('MunichInnovationGroupBundle_patent_dragpatent') }}",
                        cache: false
                     });
                },
                dragHandle: ".dragHandle"
            });
            $("#sort tr").hover(function() {
                if($(this).hasClass('tr_group'))
                    $(this.cells[0]).addClass('showDragHandle');
                }, function() {
                    $(this.cells[0]).removeClass('showDragHandle');
            });

        });
</script>

    <script>
    function changename(row_id,row_name){
        var row = document.getElementById(row_id);
        alert(row_id);
        alert(row_name);
        row.name=row_name;
        return true;
    }
</script>

1 个答案:

答案 0 :(得分:3)

tr没有.name属性,因此该属性不会自动转移到该属性。

使用setAttribute()来设置自定义属性。

function changename(row_id,row_name){
    var row = document.getElementById(row_id);
    row.setAttribute('name',row_name);
    return true;
}

然后再次检索它,您需要getAttribute

row.getAttribute('name');

偏离主题,但您无需传递row.id,然后使用getElementById。您可以直接传递该行。