我有一组单选按钮,我想在服务器端进行验证。首先,我创建了具有键的参数名称的结构。然后将每个名称设置为单选按钮可以具有的不同值。这是一个例子:
<cfargument name="frmhs_rad1" type="string" required="false" default="">
<cfargument name="frmhs_rad2" type="string" required="false" default="">
<cfargument name="frmhs_rad3" type="string" required="false" default="">
<cfset validateRadio = {
frmhs_rad1 = 0,
frmhs_rad1 = 1,
frmhs_rad2 = 0,
frmhs_rad2 = 1,
frmhs_rad2 = 2,
frmhs_rad3 = 0,
frmhs_rad3 = 1,
frmhs_rad3 = 2
}>
这是我的cfqueryparam
一条线的示例:
<cfqueryparam value="#trim(structKeyExists(validateRadio, arguments.frmhs_rad1) ? validateRadio[arguments.frmhs_rad1]:"")#" cfsqltype="cf_sql_char" null="#yesNoFormat(!len(trim(arguments.frmhs_rad1)))#" />
如果我不选中单选按钮,我的数据库中的值将保持不变NULL
。如果我选中单选按钮,那么我会在该字段中看到一个空白区域。我认为我的代码应该防止这种情况。如果值存在,那么我检查它在validateRadio
结构中是否有效。如果 value 不存在,则应将其设置为NULL
. 我不确定为什么我的代码失败了。任何人都可以看到我的代码的问题吗?