微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

DedeCMS新建模型checkbox多选框的问题及解决方法

  编程之家 jb51.cc Dedecms 新建模型checkBox多选框的问题,大家都碰上过吧,您解决了吗?我解决了,现在把解决/修改方法分享出来,希望可以帮助各位草根站长,感谢网提供这么好的站长交流平台,让我把教程发给大家,废话少说,入正文:

include/customfields.func.PHP 文件修改

搜索 $myformItem .= <input type='checkBox' name='{$fieldname}[]' class='np' value='$v'>$v;

修改成 $myformItem .= ($i==0 ? <input type='checkBox' name='$fieldname' class='np' value='$v' checked='checked'>$v : <input type='checkBox' name='$fieldname' class='np' value='$v'>$v);
$i++;

搜索 $myformItem.= ($fvalue==$v ? <input type='radio' name='$fieldname' class='np' value='$v' checked='checked' />$v : <input type='radio' name='$fieldname' class='np' value='$v' />$v);
}
}
$innertext = $myformItem;
}

下面加上

//checkBox

else if($ftype=='checkBox')
{
if(is_array($items))
{
foreach($items as $v)
{
$v = trim($v);
if($v=='') continue;
$myformItem.= ($fvalue==$v ? <input type='checkBox' name='$fieldname' class='np' value='$v' checked='checked' />$v : <input type='checkBox' name='$fieldname' class='np' value='$v' />$v);
}
}
$innertext = $myformItem;
}

//////////////////////////////////////////////////////////////////////////////////////

打开 dede/inc/inc_archives_all.PHP 文件

搜索 else
{
$myformItem .= <input type='radio' name='$fieldname' class='np' value='$v'>$v;
}
}
}
$formitem = str_replace(~name~,$ctag->GetAtt('itemname'),$formitem);
$formitem = str_replace(~form~,$myformItem,$formitem);
return $formitem;
}

在下面加上

else if($ctag->GetAtt(type)=='checkBox') //checkBox 类型
{
$myformItem = '';
$items = explode(',',$innertext);
foreach($items as $v)
{
$v = trim($v);
$i = 0;
if($v!='')
{
if($i==0)
{
$myformItem .= <input type='checkBox' name='$fieldname' class='np' value='$v' checked='checked'>$v;
}
else
{
$myformItem .= <input type='checkBox' name='$fieldname' class='np' value='$v'>$v;
}
}
}
$formitem = str_replace(~name~,$formitem);
return $formitem;
}

搜索 else if($dtype==float)
{
$dvalue = trim(ereg_replace([^0-9.],,$dvalue));
if($dvalue==)
{
$dvalue = 0;
}
return $dvalue;
}

在下面加上

// checkBox 类型
else if($dtype==checkBox)
{
if($dvalue==)
{
$dvalue = <input type='checkBox' name='$fieldname' class='np' value='$v' checked='checked'>$v;
}
return $dvalue;
}

搜索 else if($ctag->GetAtt(type)=='radio')
{
$myformItem = '';
$items = explode(',$innertext);
foreach($items as $v)
{
$v = trim($v);
if($v!='')
{
if($fvalue==$v)
{
$myformItem.= <input type='radio' name='$fieldname' class='np' value='$v' checked>$v;
}
else
{
$myformItem.= <input type='radio' name='$fieldname' class='np' value='$v'>$v;
}
}
}
$formitem = str_replace(~name~,$formitem);
return $formitem;
}

在下面加上

else if($ctag->GetAtt(type)=='checkBox') //checkBox 类型
{
$myformItem = '';
$items = explode(',$formitem);
return $formitem;
}

搜索 else if($ctag->GetAtt(type)==multitext)
{
$innertext = <textarea name='$fieldname' id='$fieldname' style='width:100%;height:80'>$fvalue</textarea>;
$formitem = str_replace(~name~,$innertext,$formitem);
return $formitem;
}


在下面加上

// checkBox 类型
else if($formitem==checkBox)
{
if($formitem==)
{
$formitem = <input type='checkBox' name='$fieldname' class='np' value='$v' checked='checked'>$v;
}
return $formitem;

}

////////////////////////////////////////////////////

我这程序改的文件太多,有点乱,所以你修改的时候一定要看清楚,再修改,反正我这里可以用,你要是不行,你仔细检查,别忘了做好备份!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐