程序员人生 网站导航

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

栏目:DedeCMS时间:2014-06-01 04:29:50

  网(LieHuo.Net)教程 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~",$ctag->GetAtt('itemname'),$formitem);
$formitem = str_replace("~form~",$myformItem,$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~",$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~",$ctag->GetAtt('itemname'),$formitem);
$formitem = str_replace("~form~",$myformItem,$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~",$ctag->GetAtt('itemname'),$formitem);
$formitem = str_replace("~form~",$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;

}

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

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

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐