性xxxx丰满孕妇xxxx另类_CHINESE熟女老女人HD视频_最近2019中文字幕在线看_亚洲一卡2卡3卡4卡贰佰信息网_先锋影音男人av资源_国产精品久久久久久久免费_freexxⅹ性中国hd露脸_一区二区三区国产亚洲网站_青娱视觉盛宴免费国产在线_春暖花开cc地址_亚洲色无码A片中文字幕_高压监狱满天星法版免费夸克网盘_.天堂网_日日做A爰片久久毛片A片英语_日韩中文字幕区一区有砖一区_光棍天堂手机2019版免费_最近中文字幕高清中文_日韩网站在线观看_久久久中日AB精品综合_2021国产麻豆剧传媒一区

公司新聞
當前位置:首頁 > 新聞中心 > 公司新聞

織夢自定義表單如何取出一個字段的值,并形成option

瀏覽:   發布時間:2019-07-08  [我要打印]

最近在使用織夢做站的時候,客戶用了自定義表單的情況下其中有一個字段是一個下拉菜單,織夢原帶的樣式基本不能滿足要示,所以自己做了樣式,那么怎么才能做到,用戶修改了下拉框的值,前臺及時做出改變呢,看了一下代碼,發現了大體上流程是這樣的


post_diyform.htm中有這樣的代碼,表示$postform是生成的代碼


<?php

echo $postform;

?>


在diy.php中有這樣的代碼


 


require_once DEDEINC.'/diyform.cls.php';

$diy = new diyform($diyid);

 

/*----------------------------

function Post(){ }

---------------------------*/

if($action == 'post')

{

    if(empty($do))

    {

        $postform = $diy->getForm(true);

        include DEDEROOT."/templets/plus/{$diy->postTemplate}";

        exit();

    }

生成的代碼是,下邊這些代碼是diyform.cls.php中的

   function getForm($type = 'post', $value = '', $admintype='diy')

    {

        global $cfg_cookie_encode;

        $dtp = new DedeTagParse();

        $dtp->SetNameSpace("field","<",">");

 

        $dtp->LoadSource($this->info);

        $formstring = '';

        $formfields = '';

        $func = $type == 'post' ? 'GetFormItem' : 'GetFormItemValue';

 

 

        if(is_array($dtp->CTags))

        { 

// var_dump( $zhuanye= $dtp->GetTag("zhuanye"));

// var_dump( $zhuanye->GetAtt('default'));

 

            foreach($dtp->CTags as $tagid=>$tag)

            {


可以看到,代碼中使用了dedetagparse解析了保存的html代碼,

所以我們仿照代碼可以將select字段的默認值取出并分隔,生成option代碼


    function getzy( )

    { 

        $dtp = new DedeTagParse();

        $dtp->SetNameSpace("field","<",">");

 

        $dtp->LoadSource($this->info);

        $formstring = '';

        $formfields = '';

        $func = $type == 'post' ? 'GetFormItem' : 'GetFormItemValue';

 

 

        if(is_array($dtp->CTags))

        { 

$zhuanye= $dtp->GetTag("zhuanye") ;

$items = explode(',',$zhuanye->GetAtt("default"));

foreach($items as $v)

{

$v = trim($v);

if($v!='') {

$formstring.= "<option value='$v'>$v</option>\r\n";

}

}

}

return $formstring;

}


這樣就生成<option>代碼,這樣在post_diy.htm中加入對這個函數的調用就可以了



               <?php

               echo $diy->getzy();

               ?>


如果在其它頁面如靜態頁面上如何調用呢?我們可以使用織夢中模板可以寫php代碼的方法,來解決,方法如下,

{dede:php}

require_once DEDEINC.'/diyform.cls.php';

$diy = new diyform(1);

echo $diy->getzy();

{/dede:php} 


版權所有:長春上信科技有限公司  吉ICP備16006330號-1     網站地圖技術支持:深度策劃

主站蜘蛛池模板: 宁强县| 营口市| 新田县| 安顺市| 右玉县| 宾阳县| 南乐县| 澄城县| 达孜县| 土默特左旗| 平远县| 昌江| 盐源县| 武强县| 平远县| 类乌齐县| 广灵县| 丰顺县| 镇巴县| 安西县| 九江县| 孟津县| 永平县| 信阳市| 葫芦岛市| 略阳县| 泰安市| 越西县| 嘉鱼县| 余江县| 渭源县| 长宁区| 青龙| 常德市| 元氏县| 上高县| 定西市| 肃宁县| 永定县| 南岸区| 潮安县|