【问题标题】:How to send jquery value into coldfusion variable <CFSET> to perform <CFQUERY>?如何将 jquery 值发送​​到冷融合变量 <CFSET> 以执行 <CFQUERY>?
【发布时间】:2019-06-18 06:21:08
【问题描述】:

在 mouseenter 上我想将 jquery 值发送​​到 cfset 变量以在第二页执行 cfquery

//---first page---
$(document).ready(function(){
  $(".div5").mouseenter('contextmenu2', function (hr) {
    var id = this.id;
    var trd = $("#hover_id").val(id);  
    $.ajax({
      type:'POST',
      url:'jobdetail.cfc?method=job1',
      data: { jobdt: "#trd#"}
    });
  });
});
<!--- jobdetail.cfc page --->
<cffunction name="job1" output="false" access="remote" returntype="string">
  <cfargument name="jobdt" required="true" type="any"/>
  <cfquery name="jd" datasource="xxxx">
    SELECT * 
    FROM xxxxx
    WHERE xxx='xx' 
      AND xxx= <cfqueryparam value='#arguments.jobdt#' cfsqltype="CF_SQL_VARCHAR" />  
  </cfquery>
  <cfreturn "OK" />
</cffunction>

【问题讨论】:

  • 使用{jobdt: trd} 而不是{jobdt: "#trd#"}
  • 另外,var id = this.id;var trd = $("#hover_id").val(id); 这看起来不对。
  • .. 特别是$("#hover_id").val(id) 尝试将id 的值分配$("#hover_id")。也许您打算使用$("#hover_id").val()

标签: jquery coldfusion


【解决方案1】:

由于trd 是一个javascript 变量,而不是ColdFusion 变量,所以您不需要在jQuery 中使用# 符号。要传递该值,请使用 data: { jobdt: trd } 而不是 data: { jobdt: "#trd#" }

上面的代码是针对单个值的。如果你想传递多个值,例如“name”和“id”:

var name = 'kannan' ;
var id = 10

$.ajax({
      type:'POST',
      url:'jobdetail.cfc?method=job1',
      data: { "name": name, "id" : id }
});

如果您想发送更多参数,可以使用JSON.Stringify()

var data = {};
// You can select your form value here also ( $('selector).val() )
data["Name"] = "Kannan"; 
data["id"] = "10";
data["address"] = "Kovilpatti india";
// ... etc
$.ajax({
    type: "POST",
    url: "jobdetail.cfc?method=job1",
    contentType: "application/json",
    data: JSON.stringify(data),
    error: function( msg ){
        // do something on error
        console.log( msg );
    },
    success: function (data) {
        // do something on success
        console.log( data );
    }
});

【讨论】:

  • 其实我想把 'id' 发送到 cfset 变量...
【解决方案2】:

实际上,POST 中存在一些问题。现在,我已经解决了。谢谢

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多