2

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

氟氯化碳

<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>
4

1 回答 1

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 服务器端反序列化为 object/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> 
于 2012-05-06T16:55:16.550 回答