textareaのvalueについて

このQ&Aのポイント
  • HTMLの仕様により、textareaタグではValue値は表示されないため、使用できません。
  • textareaタグのValue値は<TEXTAREA>値</TEXTAREA>となる仕様です。
  • jQueryでの$('textarea').val(data);とPHPでの<textarea><?php echo $data ?></textarea>は同じ機能を実現します。
回答を見る
  • ベストアンサー

textareaのvalueについて

▽textareaの受け渡し - PHP - 教えて!goo  http://okwave.jp/qa/q3086989.html >textarea内に表示させる場合は >valueは必要ありません。 ▽[PHP-users 19095]Re: TEXTAREAタグの使い方   http://ml.php.gr.jp/pipermail/php-users/2003-November/019622.html ><TEXTAREA>のValue値は ><TEXTAREA>値</TEXTAREA> >となります。 >なので、開始タグ内でValue値を指定しても表示されません と書かれているのですが、これはHTMLの仕様なのでしょうか? また、それは、どこに書かれているのでしょうか? inputタグはvalueなのに、「textarea」タグでは何故Value値が有効でないか、教えてください。 後、jQueryで「$("textarea").val(data);」とやるのと、 PHPで、<textarea><?php echo $data ?></textarea>とやる行為に、違いはあるでしょうか? 両者は同じことをやっているという認識で良いでしょうか?

  • re999
  • お礼率61% (476/777)
  • PHP
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • root139
  • ベストアンサー率60% (488/809)
回答No.2

> これはHTMLの仕様なのでしょうか? > また、それは、どこに書かれているのでしょうか? 仕様です。W3C がまとめた規格(勧告)に載っています。 下記のページは W3C の HTML 4.01 の勧告の日本語訳の textarea の項ですが、value 属性が無いことと要素の内容が初期値になる旨が確認できます。 http://www.asahi-net.or.jp/~sd5a-ucd/rec-html401j/interact/forms.html#h-17.7 > 後、jQueryで「$("textarea").val(data);」とやるのと、 > PHPで、<textarea><?php echo $data ?></textarea>とやる行為に、違いはあるでしょうか? jQuery というか javascript はクライアントサイド、つまりWebブラウザが処理しますよね? PHPはサーバサイドで処理されますから、textarea に値が設定されるという最終的な結果が同じでも過程はかなり異なります。 例えば、jQuery は javascript が動かないように設定されているブラウザでは処理されませんが、PHPはブラウザの設定は関係有りません。

re999
質問者

お礼

回答ありがとうございましたー

その他の回答 (1)

  • shimix
  • ベストアンサー率54% (865/1590)
回答No.1

昔からこの仕様です。どこに書いているかとなると http://www.w3.org/TR/html401/interact/forms.html#h-17.7 あたりを読んでもらうしかありません。 >両者は同じことをやっているという認識で良いでしょうか? サーバ側でセットして返すかブラウザ側で書き替えるかの違いですね。サーバ側で返す時点で値が決まっていればサーバから返すべきです(jQueryで書き替えるのはブラウザ側の条件で書き替えたいケースに限定すべき)。

re999
質問者

お礼

回答&リンクご提示ありがとうございます。 HTMLの仕様書(?)はこれなんですねー

関連するQ&A

  • プルダウンメニューでValue値をPHPへの受け渡しができません

    こんばんは。 HTML(apache)+MySQL+PHPの連携で、プルダウンメニュ ー2つとテキストボックス2つの入力内容をPHPにデー タとして渡し、それをキーワードにして、データベー スの検索をする、という処理をさせようと思い、PHP にデータを渡すためのタグを書いています。 http://ns1.php.gr.jp/pipermail/php-users/2002-December/012011.html を参考に、テキストボックス2つの内容をPHPに渡すこ とはできたのですが($_POST関数で渡しています)、 プルダウンメニューで選択した場合のvalue値を、PHP に渡す処理ができず、行き詰っています。 http://www.big.or.jp/~mio/ga/ht/htref/ht_ref_optio.htm で、プルダウンメニューで選択した場合のvalue値を 渡すことは可能と思い、タグを書きましたが、PHPで データをダンプさせると何も表示されませんでした。 つまりはPHPにはデータが渡されていない状態で、HTM Lタグレベルでの問題という事が分かり、タグの勉強 もしましたが、option部分の記述は間違っていないの では?、と思っています。 ではform actionの、データを送信する送信ボタンの 記述で足りないところがあるのでは、と思い、調べた のですが解決方法が見つかりません。 どなたかご教授いただけましたら幸いです‥ 宜しくお願い申し上げます。 クライアント環境はWin2000、IE6.0 サーバーはRedHat9.0でPHPは4.2.2です。

    • ベストアンサー
    • HTML
  • textareaに画像を表示したい

    textareaの入力支援を作成しています。 PHPで画像のディレクトリを開き別窓などに一覧表示させ、 その画像をクリックでjQueryでテキストエリアへタグを挿入。 <textarea id="test"> あああ <img src="hoge.jpg"> いいい </textarea> ↑のようにIMGタグを挿入する状態までは実装させることが出来るのですが、 UI的に、このIMGタグを画像(サムネ)として表示させたいと考えています。 <textarea id="test"> あああ ■(←画像) いいい </textarea> テキストエリアを監視して置換するなど方法はありそうなのですが そもそもテキストエリア内で画像を表示させることができるのでしょうか? 何かいいアイディア、あるいはプラグイン等がありましたら教えてください。

  • formの配列をjsでカウントしたい

    お疲れ様です。 PHPで処理する用に <input type="checkbox" name="array[]" val="11111" />チェック1 <input type="checkbox" name="array[]" val="22222" />チェック2 <input type="checkbox" name="array[]" val="33333" />チェック3 とnameを配列にしておき、submitされたときに、 チェックされた項目のみをカウントして○件チェックされました。 とポップアップするようなスクリプトを書きたいのですが、 document.MyForm.array.value <-普通のテキストならこう書きますが、 配列の場合はどうかいたらよいのでしょうか? http://ml.php.gr.jp/pipermail/php-users/2005-August/027043.html のdocument.form1.elements[i]や document.forms['MyForm'].elements['str[1]'].value などの書き方も試してみましたが、 undefinedになってしまいます。 PHP側はいまあるままいじりたくないので、form内のname属性はそのままにしたいです。 このような場合、どう書けばチェックされたものだけをカウントすることができるのでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP
  • HTML template for PHPで、テンプレート側で表示文字

    HTML template for PHPで、テンプレート側で表示文字に制限をかけたいのですがどうすればよいでしょうか? {rval hige/hogehoge}となっている箇所の表示を、例えば20文字までとか、あるいは20文字以上だとそこで切り取り…を付与、みたいにしたいのですが、具体的に、どうすればよいのでしょうか? 自分では、下記リンク先を調べてみたのですが、よく分かりませんでした。 ▽[PHP-users 32496] Re: HTML template for PHPの詳しい解説があるサイトを探しています。 http://ml.php.gr.jp/pipermail/php-users/2007-July/033013.html

    • ベストアンサー
    • PHP
  • textareaの受け渡し

    PHPで作成されたform.php(フォーム)からkakunin.php(確認の画面) に情報を飛ばす際、 <textarea>に記述された内容は表示されるのですが、 確認画面から【修正】という形でform.phpに値の受け渡しをしようすると情報の表示がされません。 こちらがその部分のコードになります。 -form.php- <tr> <td>メニュー内容</td><td><textarea name="menu" cols="35" rows="5" value="<?php echo nl2br($menu); ?>"></textarea>※全角300文字以内でご記入下さい。</td> </tr> -kakunin.php- echo nl2br($menu); //ここでは一度情報が記載されます。 そこからまた情報をform.phpに戻すさい、 <form action="salon_reg_complete.html" method ="post"> <input type="hidden" name="menu" value="<?php echo $menu; ?>"> <form> これで戻しているのですがどうにも出来ません。 どなたかご存知の方お伺いできませんでしょうか?

    • ベストアンサー
    • PHP
  • TEXTAREAの印刷について

    HTMLでの質問なのですが、TEXTAREAタグを用意し、画面表示させて TEXTAREAに長い文字を入力するとTEXTAREAにスクロールが出ると思います。 その時に、スクロールで表示されていない部分が、印刷されなくて 困っております。 TEXTAREAのデータ全てを印刷時に表示する方法はありますでしょうか? ブラウザは、FireFox3.6.2で表示しております。 よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • textarea内のタグを反映させたいのですが

    http://okweb.jp/kotaeru.php3?q=984300を参考に 改行を犠牲にして自動リンクを利用できるようにしたのですが、 HTMLの一部に編集内容を反映したいため FONTタグ等も利用したいんです。 何か良い方法はありませんでしょうか? よろしくお願いします。 <?PHP 文字制限のため省略ですが参考元と同様です。 ?> <html> <title>テキストファイルのデータ更新</title> </head> <body> <form method="post" action="edit.php"> data1の変更 - <textarea name ="data1" rows="5" cols="40"><?php echo preg_replace("/<br>/", "\n", $ini['data1']); ?></textarea><br> data2の変更 - <textarea name ="data2" rows="5" cols="40"><?php echo preg_replace("/<br>/", "\n", $ini['data2']); ?></textarea><br> data3の変更 - <textarea name ="data3" rows="5" cols="40"><?php echo preg_replace("/<br>/", "\n", $ini['data3']); ?></textarea><br> <input type="submit" value="送信"> </form> <table> <tr><td>data1</td><td><?PHP echo ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]", "<a href=\"\\0\">\\0</a>", $ini['data1']); ?></td></tr> <tr><td>data2</td><td><?PHP echo ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]", "<a href=\"\\0\">\\0</a>", $ini['data2']); ?></td></tr> <tr><td>data3</td><td><?PHP echo ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]", "<a href=\"\\0\">\\0</a>", $ini['data3']); ?></td></tr> </table> </body> </html>

    • 締切済み
    • PHP
  • FROMのTEXTAREAに関する質問

    PHP駆け出しの初心者です。 早速ですが質問です。 『form』タグの『textarea』をPHPから 使用したときにおかしな現象になります。 下記が、現象の出るコーディングを簡単に書いたものです。 ******************************************************<html> <head> <title>PHP_在庫管理_新規入庫処理</title> <body> <?php If (@$_POST){ $MEMO=@$_POST["MEMO"]; } ?> <form name="MEMO_TEST" method="post" action="MEMO_TEST.PHP"> メモ<textarea name="MEMO" cols="60" rows="5" wrap="hard"> <?php echo "$MEMO"; ?> </textarea> <input type="submit" value="更新"></FORM> </body> ************************************************************ 上記のを実行すると、実行した時点で既に『textarea』内に 複数の『tab』データが入力された状態になってます。(;_;) さらに困ったことに、『更新』ボタンを押したときに テキストエリアに入力された内容を 一旦変数『$MEMO』に入れ、そのまま再度テキストエリアへ戻してる のですが、戻すときにさらに複数の『tab』データが付加されて しまいます。 『更新』ボタンを押すたびにどんどん『tab』データが付加されてしまいます。一体何故こうなってしまうのでしょうか? どなたかご教授の程よろしくお願いいたします。(;_;)

    • ベストアンサー
    • PHP
  • PHP4にて別のサーバーにあるファイルのサイズを取得する

    同じサーバーにあるファイルの場合 filesize(...)関数でファイルのサイズを取得できますが、 サイズを知りたいファイルが別のサーバーにある場合は どのように取得すればよいのでしょうか? PHP5ならばget_headers(...)関数が使用できるようですが、 PHP4ではこの関数は使用することができないようなので、 どうすればいいものか困っています・・・。 ちなみに、下記URLの参考では取得できませんでした。 (ローカル環境のPHP5では正常に動作しますが・・) http://ml.php.gr.jp/pipermail/php-users/2006-December/031391.html 方法をご存じの方がいらっしゃいましたら、 宜しくお願いします

    • ベストアンサー
    • PHP
  • PHPでcookieのみを使ったログインページ

    学校で「PHPでタイムカードを作成せよ」という課題がでました。 そこで、まずログインページを作ろうと思い、 検索をかけてサンプルプログラムを見たり、 分からない命令を調べてみたりしているのですが プログラミングが大の苦手でありまして・・ 残念なぐらいにわかりません。 実際に http://ml.php.gr.jp/pipermail/php-users/2004-July/023371.html にあったプログラムを動かしてみても、 ログインフォームの次のページ(認証ページ)で 「idが未入力です」と表示されてしまいます。 (idとpwは何度も確認して入力しています) どなたか簡単なログインページのサンプルを作っていただけないでしょうか 出来ればセキュリティー面などは考慮せずに、 クッキーのみを使った簡易なものをお願いしたいです。 それを拝見して勉強したいと思います・・ よろしくお願いします。

    • 締切済み
    • PHP

専門家に質問してみよう