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;

}

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

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

相关文章

文章浏览阅读483次。dedecms织梦频道模板中调用栏目分类并排...
文章浏览阅读284次。我们在用织梦建站的过程中,难免会遇到各...
文章浏览阅读152次。seo专题是seo优化必不可少的一环,对于网...
文章浏览阅读142次。在Dedecms中,在列表页调用文章摘要的方...
文章浏览阅读234次。织梦DedeCMS文章内容发布时可以选择“头...
文章浏览阅读701次。虽然织梦DedeCMS因为安全问题被人所诟病...