Coldfusion 11 在Ajax中更新局部ColdFusion变量
我一直在尝试在ASP中为coldfusion页面执行一个简单的任务。我有一个局部变量pt,需要更新。我尝试了以下代码,但没有成功Coldfusion 11 在Ajax中更新局部ColdFusion变量,coldfusion-11,Coldfusion 11,我一直在尝试在ASP中为coldfusion页面执行一个简单的任务。我有一个局部变量pt,需要更新。我尝试了以下代码,但没有成功 <cfset pt.PreCaution = ""> <label> Patient Precaution: </label> <br> <cfselect name="lstPreCaution" multi
<cfset pt.PreCaution = "">
<label>
Patient Precaution:
</label>
<br>
<cfselect name="lstPreCaution" multiple="yes"
query="GetPreCaution"
value="IsoTypeID"
display="IsoTypeName"
size="8"
required="yes"
width="100"
height="25"
label="Precaution: "
onclick="PreCautionSelected(this)"
>
</cfselect>
function PreCautionSelected(val){
var result ="";
var frm=eval('document.next');
for(i = 0 ; i < val.children.length; i++)
{
if(val.children[i].selected){
if(result.length < 1)
{
result = val.children[i].value;
}
else
{
result = result + "," + val.children[i].value;
}
}
}
$.ajax({
type: "POST",
url: "details.cfm",
data: { "#pt.PreCaution#" : result}
}).done(function(){alert(result)})
}
我对ajax调用进行了如下修改:
function PreCautionSelected(val){
var result ="";
var frm=eval('document.next');
for(i = 0 ; i < val.children.length; i++)
{
if(val.children[i].selected){
if(result.length < 1)
{
result = val.children[i].value;
}
else
{
result = result + "," + val.children[i].value;
}
}
}
$.ajax({
type: "POST",
url: "FileUpdater.cfc?method=setPrecautionType",
data: { lstPrecaution : result}
}).done(function(){})
}
<cfcomponent>
<cffunction name="setPrecautionType" access="remote" returntype="Any" >
<cfargument name="lstPrecaution" type="any" required="true" >
<cfset session.lstPreCaution = #arguments.lstPrecaution#>
<cfreturn />
</cffunction>
</cfcomponent>
我添加了以下CFC文件。此文件更新会话变量
CFC文件您只有一个错误。选择框没有onclick功能,因此您有onchange功能意味着工作正常感谢您的输入。正在调用Ajax函数并提取完整的数据。唯一的问题是服务器端没有更新ColdFusion变量
我通过将数据写入会话数据解决了这个问题。问题是程序使用的旧CF5框架。您的答案有点令人困惑。你可能想考虑编辑它。你的问题的措辞有点混乱。A你能详细说明你所说的不成功是什么意思吗?如果您收到错误,请在您的帖子中包含完整的错误消息。B听起来好像您正试图将一个变量从ASP页面发布到ColdFusion页面,即details.cfm。对吗?为什么您认为需要填充名为pt.prevention的变量?这似乎不太可能,因为POST值通常会出现在接收页面的表单范围内。您是否可以详细说明一些细节和/或代码片段,说明如何解决问题,以帮助下一个家伙?