如何使用ColdFusion将表单输入保存到会话变量中

How to save form input into session variable using ColdFusion?

本文关键字:会话 变量 保存 输入 何使用 ColdFusion 表单      更新时间:2023-09-26

我试图使用ColdFusion将表单输入保存到会话变量中。我已经尝试了很多方法,我发现张贴在网站上,但没有一个是工作在我的代码。有人能指点我一下吗?

下面是我的完整代码。

<html>
    <head>
        <link rel="STYLESHEET" href="css/iesync2.css" type="text/css">
        <link rel="STYLESHEET" href="css/iesync_style(awps).css" type="text/css">
        <!--- <link rel="stylesheet" href="css/bootstrap-3.3.6-dist/js/jquery-ui-1.8.10.custom.css" /> --->
        <link href="css/bootstrap-3.3.6-dist/js/bootstrap.min.css" rel="stylesheet">
        <script src="css/bootstrap-3.3.6-dist/js/jquery-1.11.3.min.js"></script>
        <!--- <script src="css/bootstrap-3.3.6-dist/js/jquery-migrate-1.2.1.min.js"></script>
        <script src="js/iesync_popup.js"></script> --->
        <script language="javascript" src="css/bootstrap-3.3.6-dist/js/bootstrap.min.js"></script>
        <cfoutput>
            <script language="JavaScript">
                function check() {
                    var f = document.frmAddModel;
                    if (f.brandName.value.length == 0) {
                        alert("Please Insert Brand Name");
                        f.brandName.focus();
                        return;
                    } else if (f.brandName.value.length > 0){
                        /*window.close();*/
                    }
                }
            </script>
        </cfoutput>
    </head>
    <body>
        <cfoutput>
        <cfif structKeyExists(form,"submit")>
            <cfset session.brandName = "#form.brandName#">
        </cfif>
        <center>
            <div>
                <form name="frmAddModel" action="" method="post" onSubmit="">
                <br />
                <table border="0" cellpadding="2" cellspacing="2" width="50%">
                <tr>
                    <td colspan="2" align="left" class="cssSubTitleC">Model</td>
                </tr>
                <tr class="cssLine2L">
                    <td align="left">Brand Code (optional)</td>
                    <td><input type="Text" name="brandcode" size="25" class="cssForm" maxlength="10"></td>
                </tr>
                <tr class="cssLine2L">
                    <td align="left" class="cssLine2L">Brand Name<font class="cssRequired">*</font></td>
                    <td><input type="Text" name="brandName" size="25" class="cssForm" maxlength="10"></td>
                </tr>
                </table>
                <table border="0" width="50%" style="padding: 10px;">
                <tr>
                    <td class="cssButtonLine" colspan="2">
                        <input type="button" name="submit" class="btn btn-primary" onclick="check()" value= "Save">
                    </td>
                </tr>
                </table>
                </form>
            </div>
        </center>
        </cfoutput>
    </body>
</html>

您从未在JavaScript中提交表单。将id添加到表单中,将$("#form-id").submit();添加到函数中,然后再试一次。

添加一个id到你的表单:

<form name="frmAddModel" id="frmAddModel" action="" method="post" onSubmit="">

然后将此$("#frmAddModel").submit();添加到您的函数中:

<script language="JavaScript">
    function check() {
        var f = document.frmAddModel;
        if (f.brandName.value.length == 0) {
            alert("Please Insert Brand Name");
            f.brandName.focus();
            return;
        } else if (f.brandName.value.length > 0){
            $("##frmAddModel").submit();
            /*window.close();*/
        }
    }
</script>

注意:你需要使用双哈希标签##,因为你的JavaScript函数目前被cfoutput标签包装。尽管按照目前的书写,这似乎没有必要

将字段类型从'button'更改为'submit':

<input type="submit" name="submit" class="btn btn-primary" onclick="check()" value= "Save">