2012-02-15 30 views
1

我写了一个jquery函数。这个调用coldfusion查询来动态添加元素到垃圾邮件,但这是行不通的。任何人都可以说出错吗?如何在jquery tab中调用coldfusion查询点击功能

$('a.clikceble',$this).click(function(){ 
    <cfloop query="GET_ALL_STUDENT_INFO_QUERY"> 
      alert("inside"); 
      $(".quick_time_dl a").attr("href", "index.cfm?event=location.index&section=download&topic_id=<cfoutput>#URLDecode(url.topic_id)#</cfoutput>&video_id=<cfoutput>#URLDecode(url.video_id)#</cfoutput>&video_name=<cfoutput>#URLDecode(url_mov)#</cfoutput>&video_type=lif_mov"); 
      $(".win_media_dl a").attr("href", "index.cfm?event=location.index&section=download&topic_id=<cfoutput>#URLDecode(url.topic_id)#</cfoutput>&video_id=<cfoutput>#URLDecode(url.video_id)#</cfoutput>&video_name=<cfoutput>#URLDecode(url_wmv)#</cfoutput>&video_type=lif_wmv"); 
      <cfif len(url_pdf)> 
       $("#url_pdf").attr("href", "../assets/teaching_notes_pdf/<cfoutput>#URLDecode(url_pdf)#</cfoutput>"); 
       $(".pdf_desc").append($("#url_pdf")); 
       alert($(".pdf_desc").append($("#url_pdf"))); 
       $("#url_pdf").show(); 
      </cfif> 
      <cfif len(pdf_transcript)> 
       $("#pdf_transaction").attr("href", "../assets/teaching_notes_transcripts/<cfoutput>#URLDecode(pdf_transcript)#</cfoutput>"); 
       $(".pdf_desc").append($("#pdf_transaction")); 
       alert($(".pdf_desc").append($("#pdf_transaction"))); 
       $("pdf_transaction").show(); 
      </cfif> 
     </cfloop> 
+0

我想你正在尝试混合Coldfusion代码和JavaScript代码。好主意检查这是看你的生成的代码或张贴您生成的浏览器代码以及。 – 2012-02-15 05:23:27

回答

2

要做到这一点,最好的方法是,当你点击你的选项卡时,通过ajax方法调用你的coldfusion页面。只需用查询创建一个coldfusion页面,并通过JSON格式重新调整结果。您可以使用jQuery数据类型的jQuery ajax函数,然后遍历结果集,最后将其附加到您的DOM。一个简单的谷歌搜索'jquery coldfusion'返回很多结果,如“Easy AJAX using ColdFusion, jQuery and CFCs”。

0

在该代码中,第一服务器端代码将执行(在CFLOOP,CFIF等),并且将创建的客户机侧Java脚本。在你的情况下,如果查询(GET_ALL_STUDENT_INFO_QUERY)有3条记录,那么在处理服务器端后,它将创建脚本三次并将其返回给浏览器,但它不会在click事件处理任何查询操作(服务器端代码)。要在点击事件(从客户端)处理服务器端操作,您需要使用Ajax。