У меня есть функция CFC ColdFusion:
<cffunction access="remote" name="getResults"
returntype="struct"
returnformat="JSON"
output="no">
<cfargument name="q" required="true" type="array" />
...
</cffunction>
Как мне вызвать эту функцию из jQuery? Ни одна форма кодирования массива jQuery не заставит ColdFusion видеть значение как массив.
Если вы передадите "q = a & q = b" (например, с jQuery.ajaxSettings.traditional = true), функция получит строку "a, b", а не массив. Хотя разделение на запятую может показаться возможной, оно не будет работать, если одно из значений "q" содержит запятую. Кроме того, в идеале, функция на стороне сервера не должна знать о проблемах, связанных с сериализацией данных по проводу, и должна продолжать принимать массив.
Если вы передадите "q [] = a & q [] = b" (по умолчанию jQuery), он не будет привязан к параметру "q" . Если вы попытаетесь изменить имя параметра "q" на "q []", CFC выйдет из-за неправильного имени параметра.