質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

Q&A

2回答

6072閲覧

CakePHPのフォームに独自データ属性を付ける方法について

Zephyranthes

総合スコア28

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

0グッド

0クリップ

投稿2015/06/02 05:54

編集2015/06/03 07:04

CakePHP2.6.4を使用してウェブサイトを制作している者です。

次のようなフォームを作成しました。
Ajax処理をさせるため、JsHelperを使用しております。

lang

1<?php 2echo $this->Form->create('Test', array('type' => 'post')); 3echo $this->Js->submit('Update', array( 4 'before' => $this->Js->get('#submit')->effect('fadeIn'), 5 'success' => $this->Js->get('#submit')->effect('fadeOut'), 6 'url' => '/submit', 7 'update' => '#result' 8)); 9echo $this->Form->end(); 10?> 11<div id="submit">hogehoge</div> 12<div id="result"></div>

このフォームのINPUTタグに独自データ属性(data-xxx)を付けたいのですが、
検索してみても、その方法が分かりませんでした。

もし、その方法をご存知でしたら、ご教示いただきたく思います。
どうか宜しくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

求めてる答えがあってるかわかりませんが
echo $this->Form->create('Test', array('type' => 'post','data-xxx'=>'10'));
でフォームにdata-xxx='10'が追加されるはずです。

投稿2015/06/02 16:18

miso

総合スコア68

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Zephyranthes

2015/06/03 07:03

FORMタグではなく、INPUTタグ(submit)の方にdata-xxxを付与したいという質問でした。説明不足で申し訳ございません。
miso

2015/06/03 07:57

inputの方も方法は一緒だと思います。2列目の配列に連想配列で書けば独自データ属性だろうがnameやstyleもやれるはずです。
Zephyranthes

2015/06/03 09:39

第2引数の配列の中に同様の記述をしてみましたが、data-xxxの属性を出すことが出来ませんでした。submitだと使えないのかもしれないですね。
guest

0

FORMタグ自体に属性を付与させたいということでしょうか。
それであれば、

lang

1echo $this->Form->create('Test', array('type' => 'post'));

のオプション部分を追加することで可能ではないでしょうか。

lang

1echo $this->Form->create('Test', array('type' => 'post', 'data-hoge' => 'hogehoge'));

"type"や"action"などの決まった値は、特別な属性として処理されますので、そのあたりはご注意ください。

投稿2015/06/02 16:16

supikid

総合スコア139

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Zephyranthes

2015/06/03 07:03

FORMタグではなく、INPUTタグ(submit)の方にdata-xxxを付与したいという質問でした。説明不足で申し訳ございません。
supikid

2015/06/03 07:09

echo $this->Form->input('inputhoge', array('data-hoge' => 'hogehoge')); こういうことですかね^^
supikid

2015/06/03 07:23

submitでしたね><失礼しました。 JsHelper:submitの属性ですか、ちょっと私もやったことがなかったです。 それはさておき、JsHelperは使わない方針で行ったほうが良いかもしれません。 ================================================= The JsHelper is currently deprecated and completely removed in 3.x. We recommend using regular JavaScript and directly interacting with JavaScript libraries where possible.
Zephyranthes

2015/06/03 09:44

JsHelperは、3系では削除されていたのですか。有益な情報ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問