フォームヘルパを用いた時のクラス要素について

2021年3月30日 at 10:58

フォーラムの皆さま

いつも大変お世話になっております。
現在、外部フォームにCSS(BootStrapクラス)を実装する作業を行って
おりますが、下のようなinput オブジェクトを配置する際、フォーム
ヘルパでidを実装したいと考えておりますが、


これをフォームヘルパで実装した場合、

$form->radio("t6",'1', false,$tagAttribute)の 第4番目の引数$tagAttributeに記述することに
なるかと思いますが、
$tagAttribute の書式(文法)について、説明しているドキュメントあるいは、
実装する方法を探しております。
ご存知の方がおられましたら、ご教示いただければ幸いです。
どうぞよろしくお願い申し上げます。

# concrete5 Version
Core Version - 8.5.4
Version Installed - 8.5.4
Database Version - 20200609145307

# Database Information
Version: 5.1.73
SQL Mode:

# concrete5 Packages
Bootstrap4 Website Theme (1.0.0), Cloneamental (0.9.3), CSV User Import & Export (0.1.1), Honest Websites Back To Top (1.1.0), Login/Logout Link (1.0), Login Page Background (0.9.1), Manual Nav (2.3.3), Migration Tool (0.9.1)

# concrete5 Overrides
blocks/external_form/form/controller/tkp_menu.php, blocks/external_form/form/controller/enq_a.php, blocks/external_form/form/controller/enq_b.php, blocks/external_form/form/controller/enq_c.php, blocks/external_form/form/controller/shukai.php, blocks/external_form/form/controller/enqopt.php, blocks/external_form/form/controller/emenu.php, blocks/external_form/form/controller/mailtmp.php, blocks/external_form/form/controller/csvdwn.php, blocks/external_form/form/controller/maildelete.php, blocks/external_form/form/controller/irouren.php, blocks/external_form/form/controller, blocks/external_form/form/tkp_menu.php, blocks/external_form/form/enq_a.php, blocks/external_form/form/enq_b.php, blocks/external_form/form/enq_c.php, blocks/external_form/form/shukai.php, blocks/external_form/form/enqopt.php, blocks/external_form/form/emenu.php, blocks/external_form/form/mailtmp.php, blocks/external_form/form/csvdwn.php, blocks/external_form/form/maildelete.php, blocks/external_form/form/irouren.php, blocks/external_form/form/css/custom.css, blocks/external_form/form/css, blocks/external_form/form/js/custom.js, blocks/external_form/form/js/site.js, blocks/external_form/form/js, blocks/external_form/form, blocks/external_form, mail/mail_send_hyoka_a.php, mail/mail_send_hyoka_b.php, mail/mail_2tmp.php, mail/mail_1tmp.php, mail/mail_3tmp.php, mail/mail_4tmp.php, mail/mail_5tmp.php, mail/mail_6tmp.php, mail/mail_tmp.php, themes/tkpsurvey/css/custom.css, themes/tkpsurvey/css, themes/tkpsurvey/default.php, themes/tkpsurvey/description.txt, themes/tkpsurvey/elements/footer-form.php, themes/tkpsurvey/elements/header_top-form.php, themes/tkpsurvey/elements, themes/tkpsurvey/form.php, themes/tkpsurvey/js/custom.js, themes/tkpsurvey/js, themes/tkpsurvey/thumbnail.png, themes/tkpsurvey

# concrete5 Cache Settings
Block Cache - Off
Overrides Cache - Off
Full Page Caching - Off
Full Page Cache Lifetime - Every 6 hours (default setting).

# Server Software
Apache

# Server API
apache2handler

# PHP Version
7.3.15

# PHP Extensions
apache2handler, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, imap, intl, json, ldap, libxml, mbstring, mcrypt, mysqli, mysqlnd, odbc, openssl, pcre, PDO, pdo_mysql, PDO_ODBC, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, recode, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, wddx, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib

# PHP Settings
max_execution_time - 3600
log_errors_max_len - 4096
max_file_uploads - 100
max_input_nesting_level - 64
max_input_time - 60
max_input_vars - 1000
memory_limit - 256M
post_max_size - 384M
upload_max_filesize - 256M
ldap.max_links - Unlimited
mbstring.regex_stack_limit - 100000
mysqli.max_links - Unlimited
mysqli.max_persistent - Unlimited
odbc.max_links - Unlimited
odbc.max_persistent - Unlimited
pcre.backtrack_limit - 1000000
pcre.recursion_limit - 100000
pgsql.max_links - Unlimited
pgsql.max_persistent - Unlimited
session.cache_limiter - no value
session.gc_maxlifetime - 7200
soap.wsdl_cache_limit - 5
opcache.max_accelerated_files - 4000
opcache.max_file_size - 0
opcache.max_wasted_percentage - 5

タグ:

Re: フォームヘルパを用いた時のクラス要素について

2021年3月30日 at 15:52
フォーラムの皆さま

いつもご支援を賜り、ありがとうございます。
上記質問に関し、自己解決できましたのでご報告いたします。

フォームヘルパの設定ファイル
/concrete/src/Form/Service/Form.phpを参照し、

public function radio($key, $value, $checkedValueOrMiscFields = '', $miscFields = [])
{
if (is_array($checkedValueOrMiscFields)) {
$checkedValue = '';
$miscFields = $checkedValueOrMiscFields;
} else {
$checkedValue = $checkedValueOrMiscFields;
}
$checked = false;

$requestValue = $this->getRequestValue($key);

if ($requestValue !== false) {
if ($requestValue == $value) {
$checked = true;
}
} else {
if ($checkedValue == $value) {
$checked = true;
}
}
$id = null;
if (isset($miscFields['id'])) {
$id = $miscFields['id'];
unset($miscFields['id']);
}
$id = $id ?: $key . $this->radioIndex;
$str = '<input type="radio" id="' . $id . '" name="' . $key . '" value="' . $value . '"';
$str .= $this->parseMiscFields('ccm-input-radio', $miscFields);
if ($checked) {
$str .= ' checked="checked"';
}
$str .= ' />';
++$this->radioIndex;

return $str;
}

となっており、input のid要素が、ラジオボタンのインデックス番号と
紐づいていることがわかり、無事にjavascript で当該ラジオボタンの
値を取得し、制御できました。
ありがとうございました。