Fixed
Details
Details
Assignee
Michael Offner
Michael OffnerReporter
Samuel W. Knowlton
Samuel W. KnowltonLabels
New Issue warning screen
Before you create a new Issue, please post to the mailing list first https://dev.lucee.org
Once the issue has been verified, one of the Lucee team will ask you to file an issue
Sprint
None
Fix versions
Affects versions
Priority
Created 29 November 2018 at 21:01
Updated 8 May 2020 at 19:29
Resolved 18 February 2019 at 15:16
In Lucee.ajaxProxy.invokeMethod, the javascript loops through any values that CF has requested to be bound to the proxy request, but it culls any null values here:
Lucee.ajaxProxy.invokeMethod = function(d, e, p) { var q = {}; for (var g in p) { if (typeof(p[g]) == "object") { for (var l in p[g]) { q[l] = p[g][l] } } else { if (p[g]) { // CULLING NULL VALUES q[g] = p[g] } }
Consequently, if you bind a DOM field with an empty string to your proxy object, it will not get passed at all, as opposed to being passed as an empty string. While there is an argument to be made that it should work that way, ACF does not work that way.
This is resolved in this PR (wasn't sure whether to submit it to the extension or the Lucee core):
https://github.com/lucee/extension-ajax/pull/3 – we just comment out the two 'if' lines. Presumably they were put there for a reason, so the comments were left in until this can be reviewed properly.