简单的coldfusion将记录id传递给JS函数?
我试图通过 cfm 页面传递唯一的数据库会话 ID,但似乎无法让它工作。第 1 页有记录 id,我试图将其保存在 recordclick() 函数的 numSession 中,并将其传递到下一页,我在查询中使用它,但它不起作用。
这是我正在做的事情的粗略概述:
第 1 页:
<CFQUERY datasource = "database1" result = "result">
insert into user
set
blah blah
</cfquery>
<html>
<head>
<title>page1</title>
<script type="text/javascript">
function recordClick(imageid)
{
document.getElementById("numSend").value = document.getElementById("numSend").value + imageid;
document.getElementById("numSession").value = result.generated_key;
}
</script>
</head>
<body>
<FORM action="page2.cfm" method="post">
<img src="1.png" NAME="num1" onclick="recordClick(1)"
width="100px"
height="100px">
<div name="num1" id="num1"></div>
<input type="hidden" id="numSend" name="numSend" />
<input type ="hidden" id = "numSession" name ="numSession" />
<input type="submit" value="Done" />
</form>
</body>
</html>
--------------------------------------
<cfoutput>
The ID of the row I just inserted was "#numSession#"
</cfoutput>
<CFQUERY datasource = "database1">
update user
set
pin = "#numSend#"
where id= "#numSession#"
</cfquery>
Im trying to pass the unique database session id through cfm pages but cannot seem to get it working. Page 1 has the record id, im trying to save in numSession in the recordclick() function and pass it in the next page, where I use it in my query, but its not working.
Heres a rough outline of what im doing:
Page 1:
<CFQUERY datasource = "database1" result = "result">
insert into user
set
blah blah
</cfquery>
<html>
<head>
<title>page1</title>
<script type="text/javascript">
function recordClick(imageid)
{
document.getElementById("numSend").value = document.getElementById("numSend").value + imageid;
document.getElementById("numSession").value = result.generated_key;
}
</script>
</head>
<body>
<FORM action="page2.cfm" method="post">
<img src="1.png" NAME="num1" onclick="recordClick(1)"
width="100px"
height="100px">
<div name="num1" id="num1"></div>
<input type="hidden" id="numSend" name="numSend" />
<input type ="hidden" id = "numSession" name ="numSession" />
<input type="submit" value="Done" />
</form>
</body>
</html>
--------------------------------------
<cfoutput>
The ID of the row I just inserted was "#numSession#"
</cfoutput>
<CFQUERY datasource = "database1">
update user
set
pin = "#numSend#"
where id= "#numSession#"
</cfquery>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
ColdFusion在服务器上执行,JavaScript在客户端上执行。你的 JS 不知道
结果
是什么。您需要使用 ColdFusion 的
ToScript()
函数。这是一个来自文档的示例:
您的代码(已更正):
ColdFusion is executed on the server, JavaScript is executed on the client. Your JS has no idea what
result
is.You need to use ColdFusion's
ToScript()
function.Here's an example, taken from the docs:
Your code (corrected):