導入

導入 – HTML_QuickForm_Renderer_Tableless の導入

概要

HTML_QuickForm_Renderer_Tableless は、HTML_QuickForm のデフォルトのレンダラを置き換えるものです。目標は次の二点です。

アクセシビリティ: table タグを廃止してその代わりに label タグの for 属性やフォーム要素タグの id 属性を用いることで、 出力結果はアクセシビリティの高いものになります。 体の不自由な方はスクリーンリーダを使用されることもあるでしょうし、 そうでない人にとっても、ラベルをクリックすることで、 関連するフォーム要素にフォーカスを移動させられるという利点があります。

妥当性: このレンダラが生成する出力は、妥当な XHTML 1.1 形式となります。

使用法

このレンダラを使用するには、スタイルシートをコピーし (そして必要に応じて書き換え)、そして次のように書くだけです。

<?php
require_once 'HTML/QuickForm.php';
require_once 
'HTML/QuickForm/Renderer/Tableless.php';

$form =& new HTML_QuickForm();
$renderer =& new HTML_QuickForm_Renderer_Tableless();

// ここに通常のコードを書きます。
// たとえばフォームのフィールドや規則など……。

$form->accept($renderer);
echo 
$renderer->toHtml();
?>

完全に妥当な XHTML を生成させるには、次の行をコードに追加する必要があります。

<?php
$form
->removeAttribute('name');
?>