0

多くのドロップダウン ボックスを使用するデータグリッド ウィジェットを作成しています。このマークアップを持つ:

<select name="users">
    <option value="1">Mark</option>
    <option value="2">Jen</option>
    <option value="3">John</option>
</select>

このマークアップを変数に保存しましたが、php で現在の値を設定できるかどうか疑問に思っていますか? これは古典的な文字列操作ですが、単純な dom パーサーのようなライブラリを使用したくありません。何かアイデアはありますか? ありがとう

4

7 に答える 7

1
$array[1] = 'Mark';
$array[2] = 'Jen';
$array[3] = 'John';
$select = "<select>\n";
foreach ($array as $key => $value){
    $select .= "\t<option value='".$key."'>".$value."</option>\n";
}
$select .= "</select>\n";
echo $select;

出力:

<select>
    <option value='1'>Mark</option>
    <option value='2'>Jen</option>
    <option value='3'>John</option>
</select>
于 2013-08-02T09:10:31.767 に答える
0

jQuery の$('option[value=2]').attr('selected', true). PHP 自体は、文字列変数に格納されたマークアップを認識しません。DOM パーサーでのみ可能です。

    $template = '<select name="users">
             <option value="1">Mark</option>
             <option value="2">Jen</option>
             <option value="3">John</option>
          </select>';
    $select = simplexml_load_string($template1);
    $selectedValue = "2";
    foreach ($select->children() as $option) {
        if ($option->attributes()->value == $selectedValue) {
            $option->addAttribute('selected', 'selected');
        }
    }
    $template = $select->asXML();
于 2013-08-02T09:22:24.040 に答える
0

つまり、

$template1 = '<select name="users">
                 <option value="1">Mark</option>
                 <option value="2">Jen</option>
                 <option value="3">John</option>
              </select>';

次に、HTML ページの作成に使用するコードで

<div><?php echo $template1; ?></div>

また

echo '<div>' . $template1 . '</div>';
于 2013-08-02T09:08:31.047 に答える