7
從JavaScript調用的時候我開始這個問題時,我安裝了ColdFusion 2016更新4CFC功能不接收參數通過cfajaxproxy
HTML:
<input type='button' name='btn' value='Click me' onclick='proxyFunc();'>
代理:
<cfajaxproxy cfc='proxy' jsClassName="jsProxyClass" >
的Javascript :
proxyFunc = function() {
var proxyObj = new jsProxyClass();
proxyObj.setHTTPMethod("post");
proxyObj.setCallbackHandler (function (result) {
console.log(result);
});
proxyObj.func('X');
}
CFC:
<cffunction name='func' access='remote' returntype='string' >
<cfargument name='arg' type='string' required='false' >
<cfreturn 'What is my arg? ' & arguments.arg>
</cffunction>
我將在我的CFC一個斷點,發現arguments.arg是空白 我有form.argumentcollection = { 「ARG」: 「X」}
如果我如我所料,將setHTTPMethod從「post」改爲「get」,arguments.arg =「X」。
我有很多這方面的CF更新前已經工作正常的代碼,現在是提前全部碎裂:(
任何幫助,將不勝感激。謝謝。
如果你做'proxyObj.func({'arg':'X'});'?無論哪種方式,CF的JS/AJAX的東西總是要求麻煩。如果它在更新3中工作並在更新4中更改,則可能是一個錯誤,請考慮將其報告給Adobe。 – Alex
當代碼行'proxyObj.setHTTPMethod(「post」);'i s評論說,它的工作原理應該如此;但使用「GET」請求。 –
@Alex我嘗試過'proxyObj.func({'arg':'X'});'和arguments.arg仍然是空白的,但是form.argumentcollection = {「arg」:{「arg」:「X」}} 我會繼續向Adobe報告。 –