jqGrid benutzerdefinierte Schaltflächen Bearbeiten/löschen Verhalten
Ich bin mit benutzerdefinierten Bearbeiten/löschen Funktionen im jqGrid und ich wirklich genossen die Tatsache, dass Sie rufen Sie Ihre benutzerdefinierten Funktion nach der Prüfung, ob eine Zeile ausgewählt wurde oder nicht.
Nun möchte ich zwei weitere Tasten, und ich würde gerne mit dem gleichen Verhalten zu Bearbeiten/löschen, so dass, wenn eine Zeile ausgewählt ist, meine Funktion aufgerufen werden, aber wenn keine Zeilen ausgewählt wurden, Sie zeigen das Standard-popup, das sagt, "bitte wählen Sie eine Zeile zuerst".
Gibt es eine Möglichkeit, dies zu erreichen? Alternativ, gibt es eine Möglichkeit zum aufrufen der Methode, die aufgerufen wird, die durch das raster selbst?
Dank!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie testen, ob eine Zeile ausgewählt ist oder nicht innerhalb der
onClickButton
Methode Ihrer custom-Taste (siehe Jqgrid: navigation, basierend auf der ausgewählten Zeile als Beispiel). Wenn Sie anzeigen möchten, genau die gleiche Warnung, die Sie sollten Folgen Sie den code aus Verhindert das öffnen von einem Formular auf eine Schaltfläche hinzufügen klicken.Alle einfacher, modifizierte ich ein altes Beispiel für Sie. Auf das Beispiel Sie können klicken Sie auf die benutzerdefinierte Schaltfläche "Mein besonderer Aktion" und die Warnung angezeigt, wenn keine Zeile ausgewählt ist. Wenn einige Zeile ausgewählt ist, können Sie etwas tun, mit den Daten aus der ausgewählten Zeile. Statt einige komplexe Aktionen habe ich eine Meldung nur.
AKTUALISIERT: die Antwort auf Die Fragen "Hinzufügen von jqGrid Benutzerdefinierte Navigation zum Oberen Symbolleiste" kann auch interessant sein für Sie.
http://stackoverflow.com/questions/3902611/toolbar-in-jqgrid
jQuery.insertAfter
oderjQuery.insertBefore
. Siehe stackoverflow.com/questions/2678904/... für details.navButtonAdd
. Was Sie brauchen Sie genau?viewModal is not defined
. Ich Kopier einfach die beiden Zeilen, wo Sie rufen den alert-dialog und klebte es in das Skript habe ich ausgeführt, wenn der Benutzer auf die Schaltfläche klickt, und ich sehe keine Zeile ausgewählt ist. Ich musste das gleiche tun wie der Benutzer die Frage, zeigen eine Warnmeldung sagen: "bitte eine Zeile auswählen" oder so etwas wie, dass, wenn der Benutzer auf eine bestimmte Schaltfläche und keine Zeile ausgewählt ist. Ich bin aus meinem computer jetzt, aber ich werde weiter testen, in einer Stunde oder so.viewModal
ist jetzt$.jgrid.viewModal
. Wenn Sie anzeigen wollen, ein einfaches Dialogfeld wie jqGrid tun, dann können Sie$.jgrid.info_dialog
zum Beispiel. Siehe hier oder hier.$.jgrid.info_dialog
haben eine Menge von Optionen, die Sie angeben können, in den letzten parameter. Siehe hier. Zum Beispielleft
undtop
option verwendet werden kann. Versuchen$.jgrid.info_dialog("Test Title", "Test message",$.jgrid.edit.bClose, {left: 500, top: 100});
prmSearch
parameter dernavGrid
können verwendet werden, um vorwärts die MöglichkeitsearchGrid
. Zum Beispiel$("#grid").jqGrid("navGrid", "#pager", {}, {}, {}, {}, {top: 100, width:550, searchOnEnter: true, closeOnEscape: true, onInitializeSearch: function ($form) {/*some initializing code*/}})
.