将eval()声明为变量

时间:2019-06-02 02:27:11

标签: vbscript

我的活动服务器页面代码中有两个变量

昏暗的STATE_INSPECTIONDETAILLIBELLE_(1000) 暗ERROR_INSPECTIONDETAILLIBELLE_(1000)

以及我拥有所有变量和错误检查的表格

some asp bla bla
do while not vrs.eof
    %>
    <tr>
    <td>
    <input type="text" name="inspectiondetailLibelle_<%=vrs("id")%>" value="STATE_<%=trim(vrs("id"))%>">
&nbsp;<%=ERROR_inspectiondetailLibelle_<%=vrs("id")%>
    </td>
</tr>

现在,我要检查字段是否为空并且不为空

if trim(eval("STATE_INSPECTIONDETAILLIBELLE_" & STATE_Param_Events))="" then                
   eval("ERROR_INSPECTIONDETAILLIBELLE_" & STATE_Param_Events)= "Erreur: Le libellé de la vérification ne peut pas être vide!"
 else
    update database bla bla
end if

我的问题是我的代码显然无法正常工作,出现错误

type mismatch: 'Eval' in line
eval("ERROR_INSPECTIONDETAILLIBELLE_" & STATE_Param_Events)= "Erreur: Le libellé de la vérification ne peut pas être vide!"

如何构建变量ERROR_ +并置,以便执行正确的错误response.write在我的表单中

thx 迈克

1 个答案:

答案 0 :(得分:0)

如果需要为动态命名的变量分配值,请使用execute而不是eval。像这样:

execute("ERROR_INSPECTIONDETAILLIBELLE_" & STATE_Param_Events & "=""Erreur: Le libellé de la vérification ne peut pas être vide!""")

请注意,使用execute是不安全的,请考虑使用Scripting.Dictionary