EasyUI Forum
April 26, 2024, 09:18:30 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News:
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: Messager window is not closing  (Read 6271 times)
thecyberzone
Full Member
***
Posts: 176



View Profile Email
« on: March 03, 2021, 12:44:04 AM »

I have used following routine to delete a row of datagrid by pressing DEL key, everything is working fine, row is also getting deleted, but Messager window is not closing, after pressing Close button at the top-right corner repeatedly the Messager window got closed.

Anybody please help me by solving why this is happening. I am using Easyui 1.5.3. with PHP 5.3/MySQL 5.1 in RHEL 6.0.

Code:

document.addEventListener('keydown', function(event) {
    const key = event.key; // const {key} = event; ES6+
    if (key === "Delete") {
    var row = $('#dg4').datagrid('getSelected');
    if (row){
$.messager.confirm('Confirm','Are you sure you want to delete record?',function(r){
    if (r){
        //alert("Deleting Record : #"+row.ID);
        $.get("delAddl.php?ID="+row.ID, function(data, status){
    var result = eval('('+data+')');
      if(result.errMsg) {
$.messager.show({title:'Message', msg:result.errMsg,timeout:2000,showType:'slide'});
}        
$('#dg4').datagrid('reload');
$('#prog').combogrid('clear');
$('#st_dt').textbox('clear');
$('#dur').textbox('clear');
$('#name').textbox('clear');
$('#descode').textbox('clear');
$('#mobile').textbox('clear');
});
    }
});       
        }
    }
});
Logged
jarry
Administrator
Hero Member
*****
Posts: 2262


View Profile Email
« Reply #1 on: March 03, 2021, 11:42:20 PM »

The message window will wait for 2000ms to close. The code below works fine.
Code:
$.messager.confirm('Confirm','Are you sure you want to delete record?',function(r){
  if (r){
    $.messager.show({title:'Message', msg:'result.errMsg',timeout:2000,showType:'slide'});
  }
});
Logged
thecyberzone
Full Member
***
Posts: 176



View Profile Email
« Reply #2 on: March 04, 2021, 03:12:51 AM »

If you put result.errMsg in single quote like  msg:'result.errMsg', then insted of displaying actual message only 'result.errMsg' is displayed, and not only that same problem exists, confirmation window is not closing, after pressing ok or cancel or close button at least three times it is closing.
Logged
thecyberzone
Full Member
***
Posts: 176



View Profile Email
« Reply #3 on: March 04, 2021, 03:22:10 AM »

I have also tested the same code in easyui version 1.5.5.7, same thing is happening. But in another form the code is working fine. Huh I don't know why this is happening? Is there any timeout problem?
Logged
jarry
Administrator
Hero Member
*****
Posts: 2262


View Profile Email
« Reply #4 on: March 05, 2021, 01:32:22 AM »

Please look at this example http://code.reloado.com/uzejod4/edit#preview. It works well.
If your issue continues, try to wait for a little while to display the message window.
Code:
setTimeout(function(){
$.messager.show({title:'Message', msg:'Message content.',timeout:2000,showType:'slide'});
},400)
Logged
thecyberzone
Full Member
***
Posts: 176



View Profile Email
« Reply #5 on: March 09, 2021, 12:22:18 AM »

Yes, same way it is working fine in different form, but in a particular form this messager window is not closing. I am attaching the entire code, so that you can help me in this regard.

Code:
// ************** for editable datagrid ****************************
var editIndex = undefined;

$.extend($.fn.datagrid.methods, {
editCell: function(jq,param){
return jq.each(function(){
var opts = $(this).datagrid('options');
var fields = $(this).datagrid('getColumnFields',true).concat($(this).datagrid('getColumnFields'));
for(var i=0; i<fields.length; i++){
var col = $(this).datagrid('getColumnOption', fields[i]);
col.editor1 = col.editor;
if (fields[i] != param.field){
col.editor = null;
}
}
$(this).datagrid('beginEdit', param.index);
for(var i=0; i<fields.length; i++){
var col = $(this).datagrid('getColumnOption', fields[i]);
col.editor = col.editor1;
}
});
}
});

function endEditing(ddv,index){
if (editIndex == undefined){return true}
if (ddv.datagrid('validateRow', editIndex)){
ddv.datagrid('endEdit', editIndex);
editIndex = undefined;
var rec = index;
return true;
} else {
return false;
}
}

function onClickCell(index, field){
if (endEditing($(this),index)){
$(this).datagrid('selectRow', index)
.datagrid('editCell', {index:index,field:field});
editIndex = index;
}
}

$.extend($.fn.combogrid.defaults, {
  filter: function(q, row){
    var opts = $(this).combogrid('options');
    return row[opts.textField].toLowerCase().indexOf(q.toLowerCase()) >= 0;
  }
});

$.extend($.fn.datagrid.defaults.editors,{
label:{
init:function(container,options){
return $('<div></div>').appendTo(container);
},
getValue:function(target){
return target.value || $(target).html();
},
setValue:function(target,value){
target.value = value;
$(target).html(value);
},
resize:function(target,width){
$(target)._outerWidth(width);
}
}
});

// ************** for editable datagrid ****************************


function loadNeed() {

v = $('[name=upto]:checked').val();

var moncal = $('#dt').datetimespinner('getValue');

var selmon = moncal.split('-');
var dt1 = new Date(selmon[1],selmon[0],1);
var y = dt1.getFullYear();
var m = dt1.getMonth();

var caldt2 = (new Date(new Date(y,m,1)-1));
var cald2 = caldt2.getFullYear()+'-'+dDigit(caldt2.getMonth()+1)+'-'+caldt2.getDate();

var caldt1 = (new Date(y,m-1,1));
var cald1 = caldt1.getFullYear()+'-'+dDigit(caldt1.getMonth()+1)+'-01';

if(v=='mon'){
if(m<4){
var dt1 = (new Date(y-1,4,1));
var d1 = dt1.getFullYear()+'-'+dDigit(dt1.getMonth())+'-01';
}
else {
var dt1 = (new Date(y,4,1));
var d1 = dt1.getFullYear()+'-'+dDigit(dt1.getMonth())+'-01';
}
var dt2 = (new Date(new Date(y,m,1)-1));
var d2 = dt2.getFullYear()+'-'+dDigit(dt2.getMonth()+1)+'-'+dt2.getDate();
}
else {
if(m<4){
var dt1 = (new Date(y-1,4,1));
var d1 = dt1.getFullYear()+'-'+dDigit(dt1.getMonth())+'-01';
var dt2 = (new Date(y,3,31));
var d2 = dt2.getFullYear()+'-'+dDigit(dt2.getMonth()-1)+'-31';
}
else {
var dt1 = (new Date(y,4,1));
var d1 = dt1.getFullYear()+'-'+dDigit(dt1.getMonth())+'-01';
var dt2 = (new Date(y+1,3,31));
var d2 = dt2.getFullYear()+'-'+dDigit(dt2.getMonth()-1)+'-31';
}
}

if(m<4){
var yr = y-1;
} else {
var yr = y;
}
 
var sec = $('#cg2').combogrid('getText');
  // alert('getDeptNeed.php?dt1='+d1+'&dt2='+d2+'&caldt1='+cald1+'&caldt2='+cald2+'&sec='+sec+'&yr='+yr);
$('#dg1').datagrid({
idField: 'ID',
method: 'get',
url: 'getDeptNeed.php?dt1='+d1+'&dt2='+d2+'&caldt1='+cald1+'&caldt2='+cald2+'&sec='+sec+'&yr='+yr,
onClickCell:onClickCell,
fitColumns:true,
singleSelect:true,
rownumbers:true,
autoRowHeight:true,
editorHeight:24,
loadMsg:'loading...',
height:'auto',

        columns:[[ 
          {field:'ID',width:0,hidden:true},
          {field:'TNO2',title:'T/No',width:70,align:'center'},
          {field:'NAME',title:'Name',width:200,align:'left'},
          {field:'MOBILE',title:'Mobile',width:100,align:'left',editor:'textbox'},
          {field:'DESCODE',title:'Desig',width:40,align:'center'},
          {field:'PROGNAME',title:'Module',width:300,align:'left'},
          {field:'PROGCODE',title:'ProgId',width:60,align:'center'},
          {field:'DURATION',title:'Days',width:40,align:'center'},
          {field:'ASSDATE',title:'Plan Date',width:90,align:'center'},
          {field:'STATUS',title:'Status',width:50,align:'center',
            editor:{
            type:'textbox',
            options:{
readonly:true
}
}
          },
          {field:'OLDDATE',width:0,hidden:true},
          {field:'CALDATE',title:'Cal. Date',width:120,align:'center'  ,
            editor:{
              type:'combobox',
              options:{
                valueField:'ST_DT',
                textField:'ST_DT',
                panelHeight:100,
                required:true
              }
            }
          },
  {field:'action',title:'Save',width:40,align:'center',
formatter:function(value,row,index){
if(row.editing) {
return '<a href="javascript:void(0)" onclick="#"><img src="images/checkmark.png" /></a> ';
}
else {
return '<a href="javascript:void(0)" onclick="#"><img src="images/save.png" /></a> ';
}
}
  }
        ]] ,
onBeforeEdit: function(index,row){
row.editing = true;
$(this).datagrid('updateRow',{index:index, row:{}});

  var colDate = $(this).datagrid('getColumnOption', 'CALDATE');
  if (row.STATUS!='A') {
  colDate.editor = {
    type:'combobox',
    options:{
    method: 'get',
    valueField:'ST_DT',
textField:'ST_DT',
panelHeight:100,
url: 'getDate.php?dt1='+cald1+'&dt2='+cald2+'&pc='+row.PROGCODE+'&yr='+yr,
onLoadSuccess: function(data){
if (!data.length){
// var ed = $(this).datagrid('getEditor', {index:index,field:'CALDATE'});
// var combo = $(ed.target);
// combo.combobox('disable');
$(this).combobox('disable');
if (row.CALDATE=='--') {
$.messager.alert({title:'Information', msg:'Target is already full for this module; Please try next time.'});
}
}
}
}
};
}
else {
colDate.editor = null;
}
  var colMobile = $(this).datagrid('getColumnOption', 'MOBILE');
$(this).datagrid('fixRowHeight');
},
onAfterEdit:function(index,row){
row.editing = false;
$(this).datagrid('fixRowHeight');

if(row.CALDATE!=row.OLDDATE) {
if(row.CALDATE=='--'){
$(this).datagrid('updateRow',{index:index, row: {ID:row.ID,OLDDATE:row.OLDDATE,STATUS:"P"}});
} else {
    $(this).datagrid('updateRow',{index:index, row: {ID:row.ID,OLDDATE:row.OLDDATE,STATUS:"N"}});
}
var moncal = $('#dt').datetimespinner('getValue');
//var yr = moncal.substring(3,7);
//var mn = moncal.substring(0,3);
//alert(mn);
//$.messager.alert('Information', 'nomi.Update.php?tno='+row.TNO2+'&pc='+row.PROGCODE+'&cdt='+row.CALDATE+'&mo='+row.MOBILE+'&yr='+yr);
//alert("nomi.Update.php?tno="+row.TNO2+"&pc="+row.PROGCODE+"&cdt="+row.CALDATE+"&mo="+row.MOBILE+'&yr='+yr);
      $.get("nomi.Update.php?tno="+row.TNO2+"&pc="+row.PROGCODE+"&cdt="+row.CALDATE+"&mo="+row.MOBILE+'&yr='+yr, function(data, status){
      var result = eval('('+data+')');
      if(!result.errMsg) {
      if(row.CALDATE!=''){
$.messager.show({title:'Information', msg:row.NAME+' has been nominated successfully!',timeout:2000,showType:'slide'});
}
} else {
$.messager.show({title:'Error', msg:result.errMsg,timeout:2000,showType:'slide'});
}
  });
}

}
});

}

function getRowIndex(target){
var tr = $(target).closest('tr.datagrid-row');
return parseInt(tr.attr('datagrid-row-index'));
}


document.addEventListener('keydown', function(event) {
    const key = event.key; // const {key} = event; ES6+
    if (key === "Delete") {
    var row = $('#dg1').datagrid('getSelected');
    if (row){
$.messager.confirm('Confirm','Are you sure you want to delete record?',function(r){
    if (r){
        //alert("Deleting T/No. : "+row.ID);
        $.get("delNomi.php?ID="+row.ID, function(data, status){
    var result = eval('('+data+')');
      if(result.errMsg) {
$.messager.show({title:'Message', msg:result.errMsg,timeout:3000,showType:'slide'});
}
$('#dg1').datagrid('reload');
});
    }
});       
        }
    }
});





Logged
jarry
Administrator
Hero Member
*****
Posts: 2262


View Profile Email
« Reply #6 on: March 11, 2021, 12:00:09 AM »

This example created from your code http://code.reloado.com/ozobin4/edit#preview. It works well.
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines Valid XHTML 1.0! Valid CSS!