Die Verknüpfung aus einer Spalte mit dem Wert im jqGrid auf eine neue Seite mit GET

Habe ich eine jqGrid enthält einige Felder wie:

job_id, name, etc

Was ich versuche zu tun ist, so dass, wenn Sie auf den Wert in der Spalte job_id, es wird redirect Sie zu:

job.php?job_id=(Wert, den Sie geklickt haben)

Ich begann, indem Sie versuchen, verwenden Sie die folgende als meine colModel:

{ name:'job_id', index:'job_id', edittype:'select', formatter:'showlink',
  formatoptions:{baseLinkUrl:'job.php'}, width:50, align:'center' }

Aber was sich so ergibt, ist eine Umleitung zu:

job.php?job_id=(row_id)

Ich habe einige suchen, und fand ein post von dem Entwickler des open-source-version dieser software, der vorschlug, mit den folgenden colModel und zusätzliche JS:

{ name:'job_id', index:'job_id', edittype:'select', formatter:'showlink',
  formatoptions:{baseLinkUrl:'#'}, width:50, align:'center' }

loadComplete: function() {
    var myGrid = $("#home_list");
    var ids = myGrid.getDataIDs();
    for (var i = 0, idCount = ids.length; i < idCount; i++) {
        $("#"+ids[i]+" a",myGrid[0]).click(function(e) {
            var hash=e.currentTarget.hash;//string like "#?id=0"
            if (hash.substring(0,5) === '#?id=') {
                var id = hash.substring(5,hash.length);
                var text = this.textContent;
                location.href="job.php?id="+text;
            }
            e.preventDefault();
        });
    }   
}

Dies ist aber nicht kompatibel mit IE. Zusätzlich zu dieser, wenn die Anzeige eine große Anzahl von Zeilen in das jqGrid, dauert es extrem lange zum laden, sagen wir 5 Sekunden + für 500 Zeilen.

Ich werde weiter daran zu arbeiten, aber ist das etwas, was jemand anderes getan hat?

InformationsquelleAutor Linnay | 2011-02-15
Schreibe einen Kommentar