簡體   English   中英

PHP簡單HTML DOM和下拉菜單元素選擇選項

[英]PHP Simple HTML DOM and Dropdown Element Selected Option

我正在使用php簡單html dom生成下拉輸入。 我有一些來自數據庫的值,根據它們我將在我的select-> option dom元素中添加“ selected”值。

<select name="myDropDown" id="someID">
   <option value="someValue1">Value1Value</option>
   <option value="someValue2">Value2Value</option>
   <option value="someValue3">Value3Value</option>
</select>

這是默認值。 我想像這樣增加價值,請檢查選項2:

<select name="myDropDown" id="someID">
   <option value="someValue1">Value1Value</option>
   <option value="someValue2" selected>Value2Value</option>
   <option value="someValue3">Value3Value</option>
</select>

在這樣做的同時,我想使用我的插件。

<?php    
    $html = new simple_html_dom();
    $html->load('
           <select name="myDropDown" id="someID">
             <option value="someValue1">Value1Value</option>
             <option value="someValue2">Value2Value</option>
             <option value="someValue3">Value3Value</option>
           </select>
          ');
    echo $html;
?>

一切正常,直到這里。 是的,現在我需要在我的第二個選項中插入selected 我不知道如何使用PHP Simple HTML DOM執行此操作,或者我在文檔中缺少某些內容: http : //simplehtmldom.sourceforge.net/manual.htm#section_access

我到目前為止已經嘗試了什么,並且在我的php部分中遇到了很多錯誤:

<?php
$html = new simple_html_dom();
   $html->load('
              <select name="myDropDown" id="someID">
                 <option value="someValue1">Value1Value</option>
                 <option value="someValue2">Value2Value</option>
                 <option value="someValue3">Value3Value</option>
              </select>
              ');
   //here's where i'm trying to reach the child nodes :    
   $ret = $html->getElementById('someID');
   $ret->children(2)->GOTTADOSOMETHINGHEREANDIREALLYDUNNO;
   echo $html;
?>

順便說一句,如果您提供另一種簡單的方法來執行此操作,我將不勝感激。

先感謝您 !

為什么要使用simple_html_dom而不是僅使用模板文件(使用PHP)?

<select name="test" <?php if($selected){echo 'selected'}?> />

甚至更好的Smarty。

<select name="test" {if $selected}selected{/if} />

Simple_html_dom是用於解析復雜的html文檔(例如交換圖像url等)的類。 我看不到任何需要使用此類的原因。

通過最少的研究,您可以自己解決這個問題。

$ret->children(2)->selected = true;

用於使用簡單HTML DOM獲取下拉列表元素選定選項
只需嘗試這種簡單的方法

 $element =  $html->find('#selectIDGoesHere',0)->find('option');     
        foreach($element as $elemen) {         
            echo "Display text:".($elemen->plaintext)."<br>"; 
            echo "value:".($elemen->value)."<br>";
        } 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM