0 html javascript coldfusion lucee
我希望使用来自javascript的加法和减法的值,并使用它们将startRow和endRow值一起递增.我有加法和减法工作,并显示值.现在我无法弄清楚如何在引号内添加值.每次我尝试使用##变量标记时,它都会告诉我我的变量不存在.我希望能够按下下一个和上一个按钮,让它显示前者和后20个结果.`
<cfoutput>
<script type="text/javascript">
var currentValue = 0;
var add = function(valueToAdd){
("adding: " + valueToAdd);
currentValue += valueToAdd;
document.getElementById('number').innerHTML = currentValue;
};
</script>
</cfoutput>
<cfparam name="url.start" default="1" >
<cfquery name="query" datasource="">
</cfquery>
<table>
<cfset totalPages = ceiling(query.recordCount)>
<cfset thisPage = ceiling(url.start)>
<cfloop query="query" startRow="1" endRow="20">
<cfoutput>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</cfoutput>
</cfloop>
</table>
<html>
<head>
</head>
<body>
<div id="text">Results = <span id="number">0</span><div>
<a href="javascript:add(20)">Plus 20 Results</a>
<a href="javascript:add(-20)">Minus 20 Results</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我从代码中删除了数据库信息.
鉴于您的示例代码,我不明白为什么您首先需要或想要使用Javascript,但为了回答问题,答案是您不能直接将客户端Javascript变量的值传递给像ColdFusion这样的服务器端语言.Javascript在客户端运行,例如在浏览器中运行.ColdFusion在服务器上运行.因为Javascript与ColdFusion分开运行,所以必须使用一些方法将值从客户端(即带有浏览器的计算机)发送到服务器.
可能的选择:
将值作为URL参数发送:
<a href="https://www.example.com/index.cfm?start=20">Plus 20 Results</a>
要么
<a href="javascript:location.href='https://www.example.com/index.cfm?start='+add(20)"/>Plus 20 Results</a>
通过HTML FORM将值作为POST或GET参数发送:
<form action="/index.cfm" method="post">
<input type="text" name="start" value="20"/>
<input type="submit"/>
</form>
或者使用POST或GET将AJAX值发送到ColdFusion服务.