Maison >interface Web >js tutoriel >jquery easyui dataGrid modifie dynamiquement la méthode d'implémentation du nom du champ de tri

jquery easyui dataGrid modifie dynamiquement la méthode d'implémentation du nom du champ de tri

小云云
小云云original
2018-01-23 17:01:182511parcourir

Cet article partage principalement avec vous la méthode d'implémentation de jquery easyui dataGrid modifiant dynamiquement le nom du champ de tri. jQuery easyui dataGrid modifie dynamiquement le nom du champ de tri. Dans des circonstances normales, lors de son utilisation, nous cliquerons sur le champ correspondant à trier. . Voici JAVA à titre d'exemple. , les champs de la classe d'entité backend peuvent être incohérents avec les champs de la base de données

Par exemple : l'attribut dans la classe d'entité est userName, le frontend file="userName" et la base de données ; le champ est user_name. À ce stade, si userName est défini sur Trier la colonne puis cliquez, une exception sera levée, car dataGrid triera le champ avec le nom du champ dans field="userName" lors du tri ; 🎜>Question :

Comment mapper userName et user_name dans la base de données

Solution :

1 : Juger les champs de tri transmis depuis le frontend côté serveur en arrière-plan, et mappez-les manuellement aux champs de la base de données Nom ;

Avantages : Sécurité, les champs de la base de données ne seront pas exposés dans la page HTML frontale

Inconvénients : Il y aura beaucoup de mappage de champs ; jugements dans le code backend ;

2 : faites un jugement en cliquant sur la colonne du champ de tri dans la réception, et utilisez le script JS pour juger sur la page de la réception et mappez-le au nom du champ dans la base de données ; : Non sécurisé, les vrais noms de champs de la base de données seront exposés dans la page HTML

Remarque : si vous avez des exigences de sécurité élevées, il est recommandé de choisir le premier ; 🎜>La seconde est utilisée ici La méthode est mise en œuvre comme suit :

Utilisation :

Recommandations associées :

 /** 
 *在点击排序字段时,改变传入后台的字段 
 *param对应onBeforeLoad事件的参数 
 *map自定义的字段映射Map 
 */ 
onSortColumn=function(param,map){ 
  //取出map中字段的映射关系值 
  var fieldSort=map[param.sort]; 
  if(fieldSort!='' && fieldSort!=undefined){ 
    //设置新的排序字段名,设置完之后,发送请求时一并会发送到服务端 
    param.sort=fieldSort; 
  } 
}
php mysql requête SQL étendue solution de nom de champ chinois Méthode

  //创建Map 
var map = new Map(); 
//为map添加值;key:对应filed="userName"中的字段名;value:对应数据库的字段 
map['userName']='user_name'; 
 
$('#datagrid').datagrid({ 
  onBeforeLoad:function(param){ 
    onSortColumn(param,map); 
  } 
});

mybatis appelle dynamiquement le nom de la table et le nom du champ

php obtient un exemple de nom de champ Sharing_PHP tutoriel

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn