为什么var没有更新?

时间:2016-01-26 18:06:28

标签: javascript jquery datatables

我在jQuery中有以下代码

var fila;
$(document).ready(function(){
   acciones_filas('tbl_producto', 'acciones-activos', productoTable);
   $("#id_producto").val(fila.nProCodigo);
}

function acciones_filas(tabla_id, acciones_id, tabla_objeto, fila)
{
    //click on a row
    $("#"+tabla_id+" tbody").on('click', 'tr', function(){
        $("#"+acciones_id+" .btn").removeAttr('disabled');
        if ( $(this).hasClass('row_selected') ) {
            $(this).removeClass('row_selected');
        }
        else {
            tabla_objeto.$('tr.row_selected').removeClass('row_selected');
            $(this).addClass('row_selected');
        }

        if($('#'+tabla_id+' .row_selected').length < 1)
            $("#"+acciones_id+" button").attr('disabled', 'disabled');

        fila = tabla_objeto.fnGetData(this); 
    });
}

当我点击表格的一行时,变量fila必须保存所选行的值,但是当我打印结果时,我得到undefined

1 个答案:

答案 0 :(得分:2)

在您的上下文中,您有两个变量fila。一个在功能内,另一个在外面。 Javascript将尝试使用更接近的那个。在这种情况下,函数acciones_filas的参数。

查看该链接的第8点:What is the scope of variables in JavaScript?