我正在使用HTML和Coldfusion。我想在CF中设置一个等于零的变量,然后有一个onclick事件触发一个脚本,该脚本将HTML变量中的值更改为1。然后我可以运行一个cfif,如果变量中有一个,则为true。有谁知道最好的方法吗?这就是我正在尝试的,但onClick不会触发任何有用的东西。
<cfset dayHolder = 0>
<!--- Make a Submit Button --->
<div style="max-width:50%; margin: auto; padding-top: 20px; text-align: center">
<input type="button" name="submit" onclick="setupVar();" value="Submit Day Page" tooltip="Submits Your Hour by Hour"
style="font-family:Times New Roman; font-size:16px;"/>
</div>
<script>
function setupVar(){
dayHolder=1;
return dayHolder;
}
</script>
<cfoutput> #dayHolder#</cfoutput>
<br>
<!--- Send the data to the database --->
<cfif 'dayHolder' eq 1>
etc...
非常感谢你。
答案 0 :(得分:1)
您正在混合您的想法,Javascript在客户端浏览器上运行,而CF在服务器上运行,因此要进行更改,您需要提交表单。以下是一个可以帮助您的示例:
<cfif structKeyExists(FORM,"dayHolder")>
<cfset dayHolder = FORM.dayHolder>
<cfelse>
<cfset dayHolder = 0>
</cfif>
<!--- Make a Submit Button --->
<form>
<input type="hidden" name="dayHolder" id="dayHolder" value="0">
<div style="max-width:50%; margin: auto; padding-top: 20px; text-align: center">
<input type="submit" name="submit" onclick="setupVar();" value="Submit Day Page" tooltip="Submits Your Hour by Hour"
style="font-family:Times New Roman; font-size:16px;"/>
</div>
</form>
<script>
function setupVar(){
document.getElementById('dayHolder').value = '1';
return true;
}
</script>
<cfoutput> #dayHolder#</cfoutput>
<br>
<!--- Send the data to the database --->
<cfif dayHolder eq 1>
*根据评论更新。