jquery - 我可以在 JQuery 中访问 ColdFusion session 吗?

标签 jquery coldfusion

我有一个用于登录的 ColdFusion 页面。登录按钮的单击由 JQuery 函数处理。身份验证本身是假的,并且发生在函数本身内部。成功后,我将另一个 ColdFusion 页面中的内容加载到第一页中。我可以通过 JQuery 在 ColdFusion session 中以任何方式设置变量吗?

最佳答案

从最严格的意义上来说,不,jQuery/javaScript 无法直接访问 ColdFusion 变量,Kevin B 是正确的。但是,您可以使用 AJAX(是 JavaScript,而不是 jQuery,尽管 jQuery 有一些方法可以使其变得简单)将数据发送到 ColdFusion,而无需在浏览器中进行完整的往返。这样做会导致 ColdFusion 根据您选择的方法在 URLFORM 范围中创建变量。不幸的是,FORMURL 变量仅在请求期间存在,因此您可以使用 ColdFusion 来设置您需要设置的任何 SESSION 变量使用您刚刚发送的 URLFORM 变量。

jQuery 有几种方法可以做到这一点。

一个非常简单的例子可能如下所示 jQuery:

<script>
   var myName = "Travis";
   $.get('setVariable.cfm?someVar='+myName, // Send a value to the server in the URL.
      function(data){ // tell the user what the server said (optional).
         alert(data);  //data is whatever was returned by the server.
      }
   );   
</script>

setVariable.cfm 中的 CF 代码可能如下所示

<cftry>
    <cfset session.userName = url.someVar>
    Session user was set.
    <cfcatch>
        <cfoutput>
            Oh, Crap! Something bad happened! (#cfcatch.message#)
        </cfoutput>
    </cfcatch>
</cftry>

关于jquery - 我可以在 JQuery 中访问 ColdFusion session 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14511256/

相关文章:

iis - 如何指定适用于单个子目录下所有 URI 的单个 IIS 处理程序映射路径?

sql-server - SQL Mgmt 和 CFQuery 中的查询结果不同

jquery - 恢复未设置的 div 宽度

jquery - 更改文本节点的内容

javascript - JQuery 和动态表行

java - 使用 Amazon Java SDK 无法识别 JSON 格式

jquery - 从未选择的单选按钮的父 <td> 中删除类

JQuery 获得第 n 级 child

javascript - 清除文本字段

mysql - CFWheels - 使用 save() 方法插入记录时出错