2

我需要的是一个 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>

ColdFusion.Navigate 不会刷新 CFdiv,它还会触发我用于主表单操作的 onBrowseAway 事件。我可以通过手动更改输入的值来模拟 div 刷新,但在我让它工作后它将被隐藏。

4

2 回答 2

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

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

于 2013-01-05T20:40:42.957 回答
1

让我先声明我之前没有使用过该ColdFusion.navigate功能,但根据此处的文档,该功能需要成为链接目标。它需要在标签的href一部分中。a查看我引用的文档页面上的示例。因此,尝试将您的代码添加到这样的a标签中:

<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:从您的代码中删除了文本。这似乎没有必要。

看起来好像您缺少container函数的参数。文档指出,如果您缺少此参数,则链接将被视为普通 URL,并且整个页面将被刷新。(尽管您的代码不是链接?)

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

于 2013-01-07T13:40:58.920 回答