如何在coldfusion代码中插入单个复选框值

时间:2017-07-18 07:08:51

标签: coldfusion

我有一个复选框,当我选中复选框时我想要它         应该在数据库中插入1 else 0。我怎样才能做到这一点?这是         早先一个单选按钮字段,它将被转换为复选框         已经在数据库中输入工作正常,我发布了我的数据库         代码也是如此。

    <tr>
            <td class="leftFormLabelCell extrasmalltextbold" style="border-
             left:1px solid ##9c9c9c;" width="15%">
             #mocTrans.Translate("Required template Action Item?")#
            </td>

            <td>
               <input type="checkbox" name="reqtempactionitem" value="0">
            </td>
    </tr>
    Databse code: 
    <cfif StructKeyExists(URL, "reqtempactionitem") and 
     IsBoolean(URL.reqtempactionitem)>
    , #reqtempactionitem#
    <cfelse>
    , 0
    </cfif>

1 个答案:

答案 0 :(得分:2)

html复选框的工作方式是,如果选中,浏览器会将EXEC SQL提交给网络服务器。如果选中该框,则浏览器不会向服务器提交任何内容

因此最简单的解决方案使用[checkboxname]=[value],这将为提交的复选框提供默认值。

因此,在你的html中,你应该有:

cfparam

(如评论中所述,您的值为0,应该为1.)

然后,在数据库代码中:

<input type="checkbox" name="reqtempactionitem" value="1">

请注意<cfparam name="reqtempactionitem" default="0"> ... dbfield = <cfqueryparam cfsqltype="cf_sql_bit" value="#reqtempactionitem#"> 的使用,出于性能和安全原因,强烈建议在所有查询中使用cfqueryparam