2011-07-14 3 views
1

J'ai eu une question before à propos de l'implémentation de datepicker avec jqgrid. Je pense que cette question était trop spécifique. Je voudrais savoir, quelqu'un a-t-il pu implémenter un datpicker avec un jqGrid dynamique? Le colModel, colNames, et dans mon cas, les données sont générées côté serveur via une requête ajax, puis affichées localement. Sur le serveur, en PHP, je crée un tableau avec la structure colModel, puis JSON le code avant de le renvoyer au client. JSON valide met des citations autour des clés, mais selon les exemples here, here, et (surtout) here, je ne suis pas censé faire cela.jqgrid - Utiliser datepicker avec dynamic colModel

J'ai essayé d'utiliser regex pour supprimer les guillemets, mais cela entraîne une erreur javascript car il ne peut plus analyser le JSON maintenant invalide.

Le datpicker avec dynamic colModel est-il possible?

Voici la requête AJAX:

$(document).ready(function(){ 
    $.ajax({ 
    type: "GET", 
    datatype: "json", 
    success: function(result){ 
    try{ 
    //alert(result); 
    result = jQuery.parseJSON(result); 
    }catch(err){ 
    alert("error in success json " + err); 
    return; 
    } 
    var colN = result.colNames; 
    var colM = result.colModelList; 
    var colD = result.colDataList; 
    grid.jqGrid({ 
    datatype: 'local', 
    colNames:colN, //column names 
    colModel:colM, //column options 
    data:colD,  //table data 
    editurl: 'clientArray',//changes are not sent to server 
    cellEdit: true, 
    cellsubmit: 'clientArray', 
    }); 
    } 
    }); 
}); 

et un exemple colModel:

{ 
"editable":true, 
"name":"date", 
"index":"date", 
"sorttype":"date", 
"editrules":{"date":true}, 
"editoptions":{"dataInit":"initDateEdit"} 
} 

Répondre

0

Regardez this réponses. Cela devrait résoudre votre problème.

+0

toujours pas de chance. J'utilise 'var fonctionsMapping = { " initDateEdit ": fonction (elem) {setTimeout (fonction() {$ (elem) .datepicker();}, 100);} };' et 'pour (i = 0; i Andrea

+0

Je prends ça en arrière. cela fonctionne sous forme d'édition modale (si vide), mais pas en ligne ... – Andrea

+0

cela fonctionne pour la forme en ligne, mais pas si le champ de texte d'entrée est actif ... – Andrea

Questions connexes