Javascript JS中的CF查询结果引用?

Javascript JS中的CF查询结果引用?,javascript,coldfusion,Javascript,Coldfusion,如何在javascript函数中引用coldfusion查询的结果 <CFQUERY name ="getPin" datasource = "pins"> SELECT pin FROM pinuser where email="#getEmail#" </cfquery> 然后 但是它不起作用,有什么想法吗?它非常简单,而且很有用: <script> <cfoutput>#toscript(getPin.pin, "JSVariabl

如何在javascript函数中引用coldfusion查询的结果

<CFQUERY name ="getPin" datasource = "pins">
SELECT pin
FROM pinuser
where email="#getEmail#"
</cfquery>
然后


但是它不起作用,有什么想法吗?

它非常简单,而且很有用:

<script>
    <cfoutput>#toscript(getPin.pin, "JSVariableName")#</cfoutput>
</script>

#toscript(getPin.pin,“JSVariableName”)#
您的输出应该如下所示:

<script>
    var JSVariableName = 12345; // 
</script>

var JSVariableName=12345;//
这应该可以:

<script type="javascript" language="text/javascript">
  <cfoutput>
    var pincode = '#getPin.pin#';
    alert(pincode);
  </cfoutput>
</script>

var pincode='#getPin.pin#';
警报(pincode);

我还将在SQL中包含“top 1”,或在cfquery标记中包含maxrows=1,除非电子邮件是表的主键或具有唯一约束。

您使用的是两组磅符号。这是你的错误。请看下面的例子。在<<代码> 子句中,您应该考虑使用<代码> <代码> > <代码>电子邮件>电子邮件>代码>。您将获得SQL注入攻击保护,以及查询计划缓存;不过,关于查询的内容,你有很好的建议!此外,如果查询值包含特殊字符(如单引号),则可能不起作用
ToScript
转义任何特殊字符,避免了该问题。另外,如果您需要限制记录,我会选择
TOP
(或
limit
,…)而不是
maxrows
TOP
在数据返回CF之前限制数据。因此它更有效。实际上,问题是,“如何在javascript函数中引用coldfusion查询的结果?”并且据说您已经尝试了toScript()函数。我没有太多地研究这个函数,所以我只是回答了我所知道的。不过,这听起来确实是一个有用的函数。我通常不会有太多的调用来在客户端脚本中包含服务器端数据。不过,我当然会记住这一点。你答案中的另一个要点是正确引用cfquery结果也很重要:getPin.pin而不仅仅是pin如果我的答案是正确的,请选择正确的答案。如果您需要更多信息,请编辑您的问题,以便我可以帮助您。谢谢
<script>
    var JSVariableName = 12345; // 
</script>
<script type="javascript" language="text/javascript">
  <cfoutput>
    var pincode = '#getPin.pin#';
    alert(pincode);
  </cfoutput>
</script>