我有一个隐藏的元素:
<input id="enableStat" type="hidden" value="<!--#echo var="enableStat"-->" />
我正在使用此变量来标记某些字段是启用还是禁用。
在JS中:
if(somecondition==false)
{
document.getElementById('enableStat').value = 0;
//some other statements
}
else
{
document.getElementById('enableStat').value = 1;
//some other statements
}
然后我在CGI中检查这个变量:
SSPEC_RESOURCE_ROOTVAR("enableStat", sEnable, PTR16, "%s"),
static char sEnable[2];
if(!strncmp(sEnable, "1", 1))
//do something
现在,我看到的是,无论如何,senable中的值始终为1。 JS中的if-else语句正确执行。
在此添加声明:
document.getElementById('enableStat').value = 0;
document.getElementById('enableStat').value = 1;
如果我让我的问题更清楚: 我想在JS中创建一个我可以在CGI中使用的变量/元素。我怎样才能做到这一点。在上面的代码中,似乎存在一些语法错误或变量名等。
答案 0 :(得分:1)
如果您使用C / C ++进行编码,那么您应该使用strncmp
来比较字符串。 strncpy
复制字符串并返回目标地址,这是一个地址,因此不会为0,因此将始终评估为true ...