0

我的 .js 文件中有一个字符串数组,我正在使用 $.get() 调用 .cfm 页面进行查询(最终),但想知道如何存储使用 $.get( ) 到我的 .cfm 文件中的一个变量。

.js

var obj = []; //array

//code to put strings in 'obj'

$.get("submit.cfm",{data: obj});

提交.cfm

<cfparam name="temp1" default="">
<cfset tempArr = ArrayNew(6)>

?. 我想使用 <cfparam>、<cfset> 还是有更好的选择?

submit.cfm 的目标最终是做一些事情:

<cfquery name="sample" datasource="database_live">
    SELECT temp1[1], temp1[2], etc....
    FROM table
</cfquery>
4

1 回答 1

1

有点令人困惑,因为您将数组变量命名为“obj”,但由于它实际上是一个数组......看起来你的数组只是一个列名数组,所以你可以简单地这样做......

代替:

<cfparam name="temp1" default="">
<cfset tempArr = ArrayNew(6)>
<cfquery name="sample" datasource="database_live">
SELECT temp1[1], temp1[2], etc....
    FROM table
</cfquery>

只需使用:

<cfset tempArr = DeserializeJSON(URL.data) />
<cfquery name="sample" datasource="database_live">
    SELECT tempArr[1], tempArr[2], etc....
    FROM table
</cfquery>

如果您希望查询基于数组中的项目数是动态的,那么:

<cfset tempArr = DeserializeJSON(URL.data) />
<cfset selectList = "" />
<cfloop array=#tempArr# index="i">
    <cfset selectList = listappend(selectList,i) />
</cfloop>
<cfquery name="sample" datasource="database_live">
    SELECT 
    <cfoutput>#selectList#</cfoutput>
    FROM table
</cfquery>
于 2013-06-05T16:49:50.937 回答