Ячейка dataTable редактируется при нажатии и нажатии клавиши ввода без кнопки - PullRequest
1 голос
/ 07 августа 2020
• 1000 изменить Итак, я хочу изменить параметр только для последней ячейки, которую я щелкнул;

У меня есть функция двойного щелчка для той же таблицы код:

$('#example5 tbody').on( 'click', 'tr', function (event) 
{
    //alert("on");
    // $(event.target).get(0).reset();
    var rowIndex = $(this).index(); 
           
    var col  = event.target;
    var colindex = col.cellIndex; 

     event.target.style.padding = "0px";
    event.target.style.boxSizing = "border-box";
      //event.target.style.height = "32px";
    event.target.style.lineHeight = "0";   

    var mainobj = $(this);
    var tdobj = event.target;
    var cell = $(event.target).get(0); // This is the TD you clicked
    console.log(cell);
    var cellobj = $(cell);

    var tdht = $(cell).height();
    var tdwdt = $(cell).width();
    var tdobj_val_old =  $(tdobj).text();
    tdobj_val = tdobj_val_old.replace(/"/g, "\'");
    var inptype = (colindex=="6") ? "text" : "text";
    var inpcls = (colindex=="6" || colindex=="8" || colindex=="10" || colindex=="12") ? "onlydecimalval" : "escdoubleltgt";
    var inpmax = (colindex=="6" || colindex=="10") ? 14 : 100;
            var bgcolor = (colindex=="0" || colindex=="3" || colindex=="6" || colindex=="8" ||colindex=="10" || colindex=="12" || colindex=="14") ? "#ffc8dc" : "#afe1e1";
            //alert(colindex);
    $(document).keydown(function(e)
    {
        if(e.keyCode==13)
        {
            // alert('hdeep');
            // console.log("single");

            if(colindex=="2") 
            { 
                //alert("hgg");
                var txthtml = '<input class="'+inpcls+'" id="imeditable" type="'+inptype+'" value="'+tdobj_val+'" style="height:'+tdht+'px;width:'+tdwdt+'px;position:relative;background-color:'+bgcolor+';" onblur="hmeditlosefocusfp(this,'+rowIndex+','+colindex+');" maxlength="'+inpmax+'" />';
            $(cell).addClass("editablecellcls");
            $(cell).html(txthtml);
            $("#imeditable").focus().select();
            }    
        }
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...