使用 javascript 设置 Coldfusion 变量以在同一页面上的 replace() 中使用
Set Coldfusion Variable with javascript for use in replace() on same page?
在同一页面上输入的表单数据通过 json 发布到 CFC 以存储在数据库中后,我正在尝试设置一个 coldfusion 变量。
将弹出一个模式,其中包含向客户端发送欢迎电子邮件的选项。该电子邮件的内容是预先撰写并存储在数据库中的。我们拉取它,然后在字符串上运行 replace(( 几次,以插入诸如刚刚在上一个表单上设置的客户端特定登录名和密码之类的内容。
所以我正在尝试将登录名和密码变量设置为 coldfusion 变量,以便它们可以在 rereplace(( 函数中用于将它们添加到电子邮件字符串中,以便客户端将收到它们的凭据。
<tr>
<td>
<cfparam name="ClientLogin" default="">
<cfinput type="Text" id="ClientLogin" name="ClientLogin" value="#ClientLogin#" required="Yes" message="Client Login is required" maxlength="60" class="inputText430">
</td>
</tr>
<tr>
<td>
<cfparam name="ClientPassword" default="">
<cfinput type="Text" name="ClientPassword" value="#ClientPassword#" required="Yes" message="Client Password is required" maxlength="15" class="inputText430">
</td>
</tr>
ClientEmailNotes是从查询中获取的,我需要从表单输入中设置ClientLogin和ClientPassword coldfusion变量。
莫代尔的一部分:
<cfset ClientEmailNotesStr = #clientemailDefault.ClientEmailNotes#>
<cfset ClientEmailNotesStr = Replace(ClientEmailNotesStr,"CLIENT_LOGIN","#ClientLogin#","ALL")>
<cfset ClientEmailNotesStr = Replace(ClientEmailNotesStr,"CLIENT_PASSWORD","#ClientPassword#","ALL")>
<cfset ClientEmailNotesStr = Replace(ClientEmailNotesStr,"COMPANY_NAME","#companyname.Company#","ALL")>
<textarea name="Message" cols="90" class="textArea430" wrap="virtual" style="width:420px; height:93px;">
#ClientEmailNotesStr#
</textarea>
如果我需要详细说明,请告诉我。我注意到有时在看了一个问题后,我已经内化了这个问题,以至于我可能没有很好地描述它。
提前谢谢你,
史蒂文
的是a(从表单中获取表单字段值,b(将它们应用于模态中的消息。模态代码是否已经是 DOM 的一部分?如果是这种情况,您将使用 JavaScript 来提取字段的值并替换文本区域文本,而不是使用 CF,因为它已经是 DOM 的一部分(此时没有服务器请求(。这相当简单,尽管(如前所述(,仍然不是很安全,除非您的模态邮政编码是通过安全套接字。(无论如何,您通常不会通过电子邮件发送纯文本un/pw,但这是另一个讨论(。
我明白了。
我知道 CF 是在服务器上处理的,而 JS 是客户端,但是文件中有一些代码分散了我的注意力。因此,我需要提醒它,以便从不同的角度点击。所以谢谢你。
CFC提到,自从另一个人匆忙通过它以来,它一直是有问题的。每周都会产生不同的问题。
就处理纯文本密码而言,您是绝对正确的。这是一个过时的 s#!@ 软件,我正准备重写它,所以我必须选择我的战斗来修复什么,还有很多其他问题需要在它上线时解决,直到我开始在蛋糕中重建。
我所做的是使用该组件,根据是否保存了电子邮件内容来运行 replace((,然后将其附加到模态中电子邮件的表单页面上的文本区域。
返回要追加的数据的 CFC 页面:
<cffunction name="getEmailMessage" access="remote" returnformat="json">
<cfargument name="ClientLogin" default="">
<cfargument name="ClientPassword" default="">
<cfquery name="companyname" datasource="#arguments.datasource#">
SELECT STUFF
</cfquery>
<cfquery name="clientemailDefault" datasource="#arguments.datasource#">
SELECT STUFF
</cfquery>
<cfif clientemailDefault.ClientEmailNotes eq ''>
<cfset content.message='Hard Coded Text'>
<cfelse>
<cfset ClientEmailNotesStr = #clientemailDefault.ClientEmailNotes#>
<cfset ClientEmailNotesStr = REReplace(ClientEmailNotesStr,"CLIENT_LOGIN","#arguments.ClientLogin#","ALL")>
<cfset ClientEmailNotesStr = REReplace(ClientEmailNotesStr,"CLIENT_PASSWORD","#arguments.ClientPassword#","ALL")>
<cfset ClientEmailNotesStr = REReplace(ClientEmailNotesStr,"COMPANY_NAME","#companyname.Company#","ALL")>
<cfset content.message = #ClientEmailNotesStr# >
</cfif>
<cfreturn content>
</cffunction>
感谢大家的投入。
- 如何获取不属于我项目的上一页的URL
- 如何在Facebook上的iframe应用程序中使后退按钮返回到上一页
- 使用Booklet Jquery插件,我如何验证最后一页是否显示
- 如何在一页网站中使用PHP重定向到一个页面
- Javascript并不是显示在每一页上
- 如何在一页上显示多个Highcharts图表
- jQuery分页下一页和上一页按钮在点击零或超过最后一页后失败
- 如何为AngularJS制作智能表中第一页和最后一页的跳过按钮
- Bootstrap一页导航Fluid网站最小化问题
- 返回上一页时,Javascript仍处于活动状态
- 将jsp重定向到servlet,然后重定向到下一页
- 如何在重定向到asp.net中单击按钮的下一页之前应用javascript警报
- 传递表单值并移动到另一页
- 如何获取数组详细信息另一页
- 警报中的window.location必须重定向到上一页
- 一页签出在Magento版本1.7.0.2中不起作用
- 获取/保留上一页's具有SmoothState的URL
- 简单的一页水平滚动
- 翻开一页'的javascript变量更改为提要
- 记住下一页的段塞