Ich habe eine Frage zu Argumenten, die mit Ajax in Coldfusion übergeben werden. Also habe ich drei Argumente, die ich date1, date2 und meetingDate übergebe. Ich muss drei dieser Argumente vergleichen und die Zeichenfolge basierend auf den Daten zurückgeben. Hier ist meine Logik:Überprüfen, ob in ColdFusion ein Argument vorhanden ist
<cfset sigDate1 = dateFormat(trim(arguments.date1),'yyyy/mm/dd')>
<cfset sigDate2 = dateFormat(trim(arguments.date2),'yyyy/mm/dd')>
<cfset meetDate = dateFormat(URLDecode(arguments.meetingDate),'yyyy/mm/dd')>
<cfelseif (sigDate1 LT meetDate) OR (sigDate2 LT meetDate)>
<cfset myResult = "blockDate">
<cfelse>
Mein aktueller Code ein Problem hat, wenn ich nur eine dieser beiden Daten übergeben (date1 oder date2) Ich werde immer bekommen „blockDate“ kehrte mit meiner Ajax-Funktion. Ich habe das Problem erkannt und wenn ich nur date1 aber nicht date2 passiere, wird mein elseif immer noch ausgeführt, egal was passiert. Also habe ich versucht, dieses Problem mit einem zusätzlichen cfif zu beheben und überprüfen, ob mein date1 und date2Defined ist, aber das hat das Problem nicht behoben. Wenn jemand eine Idee hat, wie man diesen Bugg reparieren kann, lass es mich wissen.
Vielen Dank im Voraus.
Ich habe keinen CFIF sehen. –
Machen Sie die Argumente obligatorisch oder geben Sie ihnen Standardwerte, je nachdem, was Ihren Geschäftsanforderungen entspricht. –
... Trotz des Fragetitels verwendet der Code alle drei (3) Argumente, als ob sie * immer * existieren würden. Verwerfen Sie Argumente beim Aufruf der Funktion, zB 'yourFunctionName (date1, meetingDate)' ODER geben Sie einfach einen leeren Wert 'yourFunctionName (date1," ", meetingDate)'? – Leigh