jquery cfml触发器(';change';)不工作

jquery cfml触发器(';change';)不工作,jquery,coldfusion,Jquery,Coldfusion,我需要的是一个绑定到列出文件类型的查询的cfselect、一个列出已保存文件的cfdiv,以及一个扫描要保存为pdf文件的图像的按钮,该图像的名称前缀为输入字段的值 简单页面 <cfselect name="DocType" id="DocType" class="selectClass" query="qGetDocTypes" display="name" value="DocTypeID"> <input name="ScanDocument" id="ScanDocum

我需要的是一个绑定到列出文件类型的查询的cfselect、一个列出已保存文件的cfdiv,以及一个扫描要保存为pdf文件的图像的按钮,该图像的名称前缀为输入字段的值

简单页面

<cfselect name="DocType" id="DocType" class="selectClass" query="qGetDocTypes" display="name" value="DocTypeID">
<input name="ScanDocument" id="ScanDocument" type="text" value="" class="ScanDocument">

<cfdiv id="handler_#docAreaID#" bind="url:#request.controlurl#documentHandler/?docareaID=#docareaID#&variableID=#variableID#&Fav=#attributes.Fav#&userid=#attributes.userid#&showform=1&ScannedDocument={ScanDocument@change}">




// remove blanks from text
ScanDoc1 = $('input.scandocument').val();
ScanDoc = ScanDoc1.replace(/\s/g, '');
<cfoutput>
ColdFusion.navigate('url:#request.controlurl#documentHandler/?docareaID=#docareaID#&variableID=#variableID#&Fav=#attributes.Fav#&userid=#attributes.userid#&showform=1&ScannedDocument='+ScanDoc);
</cfoutput>

//删除文本中的空格
ScanDoc1=$('input.scandocument').val();
ScanDoc=ScanDoc1.替换(/\s/g',);
ColdFusion.navigate('url:#request.controlurl#documentHandler/?docareaID=#docareaID#&variableID=#variableID#&Fav=#attributes.Fav#&userid=#attributes.userid#&showform=1&ScannedDocument=#+ScanDoc));
Navigate不会刷新CFdiv,它还会为我用于主窗体操作的OnBrowseWay触发一个事件。我可以通过手动更改输入的值来模拟div刷新,但在我完成此操作后,它将被隐藏

$('input.ScanDocument').trigger('Change');

如果我猜的话,我会说大写字母“C”是个问题。JavaScript区分大小写

让我先说明一下,我以前没有使用过
ColdFusion.navigate
功能,但根据需要,该功能需要成为链接目标。它需要位于
a
标记的
href
部分。请看我引用的文档页面上的示例。因此,请尝试将您的代码添加到
标记中,如下所示:

<cfoutput>
<a href="javascript:ColdFusion.navigate('#request.controlurl#documentHandler/?docareaID=#docareaID#&variableID=#variableID#&Fav=#attributes.Fav#&userid=#attributes.userid#&showform=1&ScannedDocument='+ScanDoc,'handler_#docAreaID#');">click here</a>
</cfoutput>

注意,我从代码中删除了
url:
文本。这似乎没有必要

它还显示为您缺少函数的
容器
参数。文档说明,如果缺少此参数,则链接将被视为正常URL,整个页面将被刷新。(虽然您的代码不是链接?)


另外,我不确定是否可以像您一样在函数的URL中引用ColdFusion变量。这些都是服务器端,这个函数是客户端(javascript)。正如我所说,我以前从未使用过这个,但这些是我在阅读该文档后的想法。

我认为您不需要在bind url-ScannedDocument的这部分中进行@change={ScanDocument@change}我尝试使用
code
var ScanDoc=$('input.scandocument').val();ColdFusion.navigate('url:#request.controlurl#documentHandler/?docareaID=#docareaID#&variableID=#variableID#&Fav=#attributes.Fav#&userid=#attributes.userid#&showform=1&ScannedDocument=+ScanDoc+)
code
但它创建了一个绑定cfdiv的循环。请参阅修订后的问题。$('input.ScanDocument')。触发器('change');不起作用。请注意,我从您的代码中删除了
url:
文本,听起来这才是真正的问题@user990016-为了澄清上述问题,
ColdFusion.navigate
可以在任何可以调用javascript函数的地方调用(而不仅仅是从链接)。同样,在URL中使用CF变量也是有效的。因为它们被包装在
cfoutput
中,所以对变量求值并转换为简单字符串。请记住,在刷新页面之前,这些字符串不会更改。(您可能还需要转义特殊字符以避免javascript错误)!我试图说我对
ColdFusion.navigate
函数不太熟悉的确,您遇到了主要问题,即额外的
url:
和缺少容器
id
。剩下的只是对未来读者的澄清:)是的,就是这样。我只是想知道如何传递容器ID。效果很好。