wie die Umsetzung in Großbuchstaben Konvertierung in jqgrid
Producr-codes enthalten kann, die nur in Großbuchstaben Zeichen. Wenn Kleinbuchstaben sind eingetragen, jqgrid nicht konvertieren Sie Sie in Großbuchstaben, es gibt keine solche option.
Wie Großbuchstaben erzwingen Umwandlung von eingegebenen Zeichen in jqgrid in inline-und Formular-Bearbeiten-Modus für Textfelder ?
Update
Fand ich code in Wie kann ich erzwingen Eingabe in Großbuchstaben in einer ASP.NET textbox? Letzte Antwort . Dieser code ändert eingegebenen Zeichen in Großbuchstaben Tastendruck. Ist es sinnvoll diese zu verwenden, durch hinzufügen keyprees event-handler zu jqgrid Steuerelemente für die Bearbeitung?
function ToUpper() {
//So that things work both on FF and IE
var evt = arguments[0] || event;
var char = String.fromCharCode(evt.which || evt.keyCode);
//Is it a lowercase character?
if (/[a-z]/.test(char)) {
//convert to uppercase version
if (evt.which) {
evt.which = char.toUpperCase().charCodeAt(0);
}
else {
evt.keyCode = char.toUpperCase().charCodeAt(0);
}
}
return true;
}
Verwendet, etwa so:
<asp:TextBox ID="txtAddManager" onKeyPress="ToUpper()" runat="server"
Width="84px" Font-Names="Courier New"></asp:TextBox>
Ich will regulärer Ausdruck Validierung in form hinzufügen von JQgrid. Wie kann ich das tun ?
InformationsquelleAutor Andrus | 2011-11-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zunächst einmal können Sie mithilfe von CSS-Stil
text-transform: uppercase
zu display die Daten vom Benutzer eingegeben in Großbuchstaben:Die Einstellung ändert nicht die Daten selbst. So haben Sie, um die entsprechende änderung zusätzlich. Bei der Formularbearbeitung können Sie
beforeSubmit
. Zum Beispiel, lassen Sie uns haben Sie Spalte'name'
was Sie brauchen, um Großbuchstaben. Dann fügen Sie zuerst die Einstellung destext-transform: uppercase
imdataInit
(siehe oben) und fügen SieIm Fall von inline-Bearbeitung gibt es keine
beforeSubmit
callback-Funktion. so können SieserializeRowData
wenn Sie remote-Daten:Im Falle der Nutzung
editurl: 'clientArray'
Sie beheben können die Daten inaftersavefunc
parameter dereditRow
undsaveRow
:Sehen die demo.
Ich kann nicht Folgen Sie. Was meinst du mit "set Großbuchstaben option "zur Laufzeit" und "generieren ... code zur Laufzeit". Wenn Sie eine option (oder eine variable), die der Benutzer kann zur Laufzeit testen kann man die option (die variable) in den code von
dataInit
,beforeSubmit
oderserializeRowData
aktivieren oder nicht aktivieren der groß-Umbau. Was ist das problem. Sie andere Frage: "Bitte bestätigen Sie, dass die Verwendung von keydown zu konvertieren ist nicht zumutbar" kann ich überhaupt nicht nachvollziehen. Ich kann nicht grantee, dass Sie nicht finden können, eine Implementierung mitkeydown
nur.Ich aktualisierte die Frage über die Verwendung von keypress. Ist das vernünftig. Verwenden Sie können festlegen, Großbuchstaben option für die Spaltendefinition in der Datenbank. Der code der Anwendung sollte diesen Wert überprüfen und generieren appropirate jqgrid-definition zur Laufzeit. Dies beinhaltet die Generierung kodiert in 3 verschiedenen Orten, während die Verwendung von keypress Bedarf hinzufügen nur keypress-Ereignishandler. Nicht sicher, ob das keypress-handler arbeitet, wenn verwendet, fügt den text mit Strg+V-Befehl, aber vielleicht einfügen " - Befehl, können ebenfalls behandelt werden in input-element einen event
Tun Sie getestet, den code, die du gepostet hast? In meinen tests in reinen JavaScript-Umgebung es funktioniert nicht. Ich postete Sie einen Weg, um das problem zu lösen. Wenn Sie nach einer anderen code, der funktioniert mit jedem Tastatur-event, es wäre interessant für mich. Ich weiß nicht, jede Lösung, die hold-cursor Cursor und ändern kann, die Tastatur-Ereignisse on-the-fly.
Nach code Autor der referenzierten Antwort sollte es funktionieren. Die Testfälle, die Sie verwendet? Vielleicht sollte ich Fragen, reines javascript-Frage. Es gibt Möglichkeiten: mit Ihrem Super Antwort, der versucht, keypress zu arbeiten, implementieren dieses in C# in server die im BeforeSave-und BeforeInsert-entity-Methoden, erstellen von insert-und update-Trigger in der Datenbank-server. Welcher ist der beste Weg?
InformationsquelleAutor Oleg
versuchen:
oder
Ich will regulärer Ausdruck Validierung in form hinzufügen von JQgrid. Wie kann ich das tun ?
InformationsquelleAutor Shree