Ich habe das Formular, wo Benutzer den Wert aus der Liste auswählen müssen. Liste wird von Administratoren erstellt. In einer der Listen gibt es eine Option für den Benutzer, um den Wert NO
auszuwählen, der für einen reservierten Code steht. So etwas wie Not Occupied
. Also verwende ich JQuery und AJAX, um mit dem Server zu kommunizieren. Am Backend verwende ich ColdFusion 9 auf meinem Produktionsserver. Also, um NO
zurück zu bringen, muss ich das mit 'NO '
mit dem Raum umwandeln. Wenn ich diese Funktion nicht ausführe, wird false
Wert auf der Clientseite zurückgegeben. Hier ist ein Beispiel für meine Code-Konvertierung:Verhindern, dass YES/NO-Werte in "True/False" umgewandelt werden Coldfusion 9?
<cfset convertYesNo = {
YES : "YES ",
NO : "NO "
}>
<cfset qryRecs['value'] = URLEncodedFormat(structKeyExists(convertYesNo, myInfo[CurrentRow]) ? convertYesNo[myInfo[CurrentRow]] : myInfo[CurrentRow])>
Code oben funktionierte gut auf meiner Entwicklungs-Website. Der einzige Unterschied besteht darin, dass auf der Entwicklung haben wir Coldfusion 10 und auf dem Live haben wir Coldfusion 9. Also, wenn ich den Code zog ich zu leben begann Fehlermeldung erhalten:
ColdFusion was looking at the following text:<p>{</p><p>The CFML compiler was processing:<ul><li>A cfset tag beginning on line 1071, column 18.<li>A cfset tag beginning on line 1071, column 18.
<pre>1069 : }>
1070 :
<b>1071 : <cfset convertYesNo = {</b>
1072 : "Yes" : "Yes ",
1073 : "No" : "No "
</pre>
Ich habe versucht, Anführungszeichen zu setzen um JA und Nein, aber das hat nicht geholfen. Wenn jemand weiß, wie Sie dieses Problem beheben können, lassen Sie es mich wissen. Danke im Voraus!
Sie Javacast verwenden ("strin g "," Nein ") oder wird das automatisch wieder in etwas unerwünschtes zurückverwandelt? Bei der Konvertierung in JSON verwende ich die JSONUtil-Bibliothek und verwende JavaCast ("boolean", 1), um die in JSON enthaltenen TRUE/FALSE-Werte ohne Anführungszeichen zu erstellen. –