.ajax未调用CFC文件来发布数据

时间:2012-05-06 16:50:54

标签: jquery coldfusion cfc

我无法获得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>

1 个答案:

答案 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>