объявляя eval () как переменную - PullRequest
0 голосов
/ 02 июня 2019

У меня есть две переменные в коде активной страницы моего сервера

Dim STATE_INSPECTIONDETAILLIBELLE_ (1000) Dim 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_ + конкатенацию, чтобы я правильно сделал ответ об ошибке. напишите в моей форме

thx Mike

1 Ответ

0 голосов
/ 03 июня 2019

Если вам нужно присвоить значение динамически именованной переменной, используйте execute вместо eval. Как это:

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

Обратите внимание, что использование execute небезопасно, рассмотрите использование вместо Scripting.Dictionary.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...