我无法获得jQuery .ajax调用将数据发布到我的CFC,不知道我缺少什么。尝试了许多不同的更正,没有任何工作。
$('.addItem').click(function(){
//data from button clicked
var fType = $(this).attr('id');
$.ajax({
type: "post",
url: "api.cfc",
dataType: 'json',
data: { method: "add", ID: fType }
});
)};
CFC
<cfcomponent >
<cffunction name="add" access="remote " returntype="string">
<cfargument name="ID" type="string" required="true" />
<cfquery datasource="dev" name="formT">
Insert into formMap (num, stuff)
Values (1, #arguments.ID#)
</cfquery>
</cffunction>
</cfcomponent>
答案 0 :(得分:1)
我认为你需要将方法名称添加到URL:
$('.addItem').click(function(){
//data from button clicked
var fType = $(this).attr('id');
$.ajax({
type: "post",
url: "api.cfc?method=add",
dataType: 'json',
data: { ID: fType }
)};
您还需要将json服务器端反序列化为对象/ var以读取值。
<cfcomponent >
<cffunction name="add" access="remote " returntype="string">
<cfargument name="theJson" required="true" />
<cfset json = deserializeJson(theJson)>
<cfquery datasource="dev" name="formT">
Insert into formMap (num, stuff)
Values (1, #json.ID#)
</cfquery>
</cffunction>
</cfcomponent>