Durante una fase di codice piuttosto complessa in jQuery, ho scovato un bug in jqGrid.
Il problema è riscontrabile in corrispondenza dell’uso congiunto con un altro plugin jquery: jqModal.
L’errore visualizzato da Firebug è il seguente:
b(“:input:visible”, a.w)[0] is undefined
Il codice incriminato è presente nel file jquery.jqGrid.min.js (o nella sua versione espansa):
function(a){try{b(":input:visible",a.w)[0].focus()}catch(f){}}
Come si vede jqGrid cerca di impostare il focus sul controllo senza prima accertarsi che esso esista. Per risolvere questo bug è sufficiente aggiungere questa linea di codice, prima del blocco try:
var vis=b(":input:visible",a.w);if(vis.length>0)