• ベストアンサー

HTMLの属性

HTMLの属性で<input type="text" maxlength="100" name="amount">とした場合と<input type=text maxlength=100 name=amount>ではどう違いますか?何か問題がありますか?

  • HTML
  • 回答数4
  • ありがとう数8

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

  • ベストアンサー
  • norelec
  • ベストアンサー率18% (2/11)
回答No.3

HTML の範囲では違いはありません。 ただし,引用符「"」は省略してはいけない場合もありますし,新しい HTML(XHTML)では引用符を必ずつけることになっています。 ですから,引用符を必ずつける習慣をつけておくのがよいでしょう。

その他の回答 (3)

回答No.4

SGML規定はすべての属性値を二重引用符(ASCII十進34)または単引用符(ASCII十進39)のどちらかで囲まなければならない。 属性値を引用符で囲わなくてよい場合は属性値がアルファベット(a-z and A-Z)、数字(0-9)、ハイフン(ASCII十進45)、ピリオド(ASCII十進46)、アンダースコア(ASCII十進95)、及びコロン(ASCII十進58)だけの場合。 HTML4.01の仕様は、引用符が省略可能な場合であっても省略しないことを推奨している。 とのことです。 だからご質問の内容は問題ないでしょう。 でも、もしDOCTYPE宣言などでHTMLのバージョンを4.01と書いてあるなら推奨されていないので問題だと思います。

参考URL:
http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/intro/sgmltut.html#h-3.2.2
  • gura_
  • ベストアンサー率44% (749/1683)
回答No.2

どちらでも動作するはずですが、前者のように書くべきでしょう↓ http://www.tohoho-web.com/wwwbeg2.htm#Attribute

参考URL:
http://www.tohoho-web.com/wwwbeg2.htm#Attribute
  • nejiyama
  • ベストアンサー率49% (42/85)
回答No.1

たぶん後者の場合(”が無い方)では値の読み取りができないのではないでしょうか。 値を入力するとき、「"」もしくは「'」のいずれかを前と後ろにつけないといけなかったと思います。 だいぶ前の記憶なのでもしかしたら違っているかもしれないので参考までに・・・

関連するQ&A

  • 【正規表現】HTML5のpattern属性について

    HTML5のpattern属性で半角英数記号を指定するにはどう記述したら良いですか? HTMLやCSSの学習をしています。 正規表現についてはほぼ分かりません。 (1)ユーザーIDやパスワード入力フォーム半角英数記号のみの入力を処理する場合、type属性は”text”でいいのでしょうか? (2)pattern 属性に使う正規表現はほぼ理解できません。自分なりに調べてみたのですが、以下のような記述だと_アンダーバーや@マークなどの記号は識別できないのではないかと言われました。 また入力文字数制限は正規表現でも出来るようですが、以下のように自分でもわかるminlength, maxlengthで記述しようと思っていまがこれで大丈夫なのでしょうか? サンプルとして以下のように記述してみました。 type属性や、「半角英数記号」の入力文字など正しい書き方を教えてください。 よろしくお願いします。 <input type="text" name="username" pattern="^[0-9A-Za-z]+$" minlength="4" maxlength="50">

  • 異なるname属性のテキストの入力チェックについて

    異なるname属性のテキストの入力チェックについて よろしくお願いします。 それぞれname属性の異なるテキスト群があるのですが、 どれかひとつに数字を入力しないと、アラートが出るようにしたいと思っています。 <form action="mail.cgi" method="post" onSubmit="return check(this);"> <input type="text" name="maru" /> <input type="text" name="sankaku" /> <input type="text" name="shikaku" /> </form> この場合のコードの記述方法をお教え頂ければ幸いです。 どうぞよろしくお願い致します。

  • formタグ

    HTMLで、formを使用し、CGIへテキストエリアのデータをpostしたいと 考えております。 テキストエリアを3つ、ボタンを1つ設けるならば 通常以下のようにすると思います。(必要部分の抜粋) <form action="foo1.cgi" method="post" ENCTYPE="multipart/form-data"> <input type="text" name="text1" value="text1" size=50 maxlength=100> <input type="text" name="text2" value="text2" size=50 maxlength=100> <input type="text" name="text3" value="text3" size=50 maxlength=100> <input type="submit" name="aaa" value="実行"> </form> こうすると、実行ボタンをクリックすると、text1、text2、text3のテキストエリアに 記述されているテキストが送信されますが、ここにボタンをもう一つ設け、 上記3つのデータを別のCGIに送信したいのですが、 この場合どのようにHTMLを記述したらよいでしょうか? 新たに下記のようにformタグを設けると、テキストエリアは6つになってしまいますし。。。 <form action="foo2.cgi" method="post" ENCTYPE="multipart/form-data"> <input type="text" name="text1" value="text1" size=50 maxlength=100> <input type="text" name="text2" value="text2" size=50 maxlength=100> <input type="text" name="text3" value="text3" size=50 maxlength=100> <input type="submit" name="aaa" value="実行2"> </form> どなたか分かる方情報頂けますか。

    • ベストアンサー
    • HTML
  • jQueryで属性連番処理を、複数単位で行いたい

    ・下記のとき、それぞれのdiv単位でname属性を付与したいのですが、どうすれば良いでしょうか? ■現状 <div>  <input type="text">  <input type="text">  <input type="text">  <input type="text"> </div> <div>  <input type="text">  <input type="text">  <input type="text">  <input type="text"> </div> ■希望 <div>  <input type="text" name="hoge1">  <input type="text" name="hoge2">  <input type="text" name="hoge3">  <input type="text" name="hoge4"> </div> <div>  <input type="text" name="hoge1">  <input type="text" name="hoge2">  <input type="text" name="hoge3">  <input type="text" name="hoge4"> </div> ■補足 ・jQuery.each()を使ったら、hoge8まで通しでナンバリングされてしまいました $('div :text').each(function(i){ ※「div」「input」の数は、動的に変化します

  • name属性に[]付の名前を指定した処理

    理由があり、下記の様にname属性に配列(?)を指定しています。(下記はスクリプトエラーになります。) <HTML> <HEAD> <script language="JavaScript"><!-- function input(obj1, obj2) { obj2.value = obj1.value } // --></script> </HEAD> <BODY> <FORM name="myform"> <INPUT type="text" name="text[1]" onchange="input(this, document.myform.text[2])" /> <INPUT type="text" name="text[2]" onchange="input(this, document.myform.text[1])" /> </FORM> </BODY> </HTML> 当然ながら、text[1]をtext1にし、text[2]をtext2にすれば全く問題無く動作します。nameとしてこのままtext[n]のままでこのエラーを回避するにはどうしたらいいのでしょう。以上、よろしくお願いします。

  • ASP.NETでNAME属性を固定にしたい

    ASP.NETで、「runat="server"」を含むフォームタグの場合、NAME属性が指定できません。 <input name="hoge" id="hoge" type="text" runat="server" /> と指定した場合、 <input name="ctl00$C$hoge" id="ctl00$C$hoge" type="text" /> となります。 ClientIDMode="Static"を指定することでID属性は固定にすることができるのですが、 NAME属性も同様に固定する方法はありますでしょうか? 宜しくお願いします。 ---------------------- Visual Basic 2010 .NET Framework 4.0 ----------------------

  • 時間の比較は可能でしょうか?

    <form name="time_hikaku"> 開始時刻 <input type="text" name="hour" maxlength="2"> <input type="text" name="min" maxlength="2"> 終了時刻 <input type="text" name="end_hour" maxlength="2"> <input type="text" name="end_min" maxlength="2"> </form> で入力した時刻を比較し、終了時刻が開始時刻 より小さい場合にAlert表示したいのですが、 どうすれば、Javascriptで時刻比較できますでしょうか? 09:00 8:00など、0が入力される可能性もあるので、 時間関数などがあればできそうですが。。

  • POSTデータのNAME属性をVALUEによって取得する方法

    HTML→PHPのPOSTデータのやりとりについて、 【HTML】 <form name="form1" method="post" action="xxx.php"> <input name="01" type="text" value="1"> <input name="02" type="text" value="0"> <input name="03" type="text" value="0"> <input name="04" type="text" value="1"> <input type="submit" name="Submit" value="送信"> </form> 【xxx.php】 フォームから送信されたデータを使って、「value」が"1"の「name」を拾うのにはどのように書けばいいでしょう? ↓このように取得したいです。 $data[0]="01"; $data[1]="04"; よろしくお願いします。

    • ベストアンサー
    • PHP
  • title属性内にあるテキストにリンクを貼ることってできますか?

    title属性内にあるテキストにリンクを貼ることってできますか? 例) これを↓ <input type="text" size="25" maxlength="60" title="ここにリンクを貼りたい!"> こうしたい↓ <input type="text" size="25" maxlength="60" title="ここに<a href="">リンク</a>を貼りたい!"> なぜこんなことをしたいのかというと、 登録フォームにjqueryのプラグイン(Input Floating Hint Box)を組み込んで 記入例などをヒントとして表示したいわけで。 ここまでは配布されているプラグインでOKなんですけど、 表示したヒントのテキストにリンクを貼りたいんです! このプラグインの仕様がinputタグ内のtitle属性にテキストを入れることで ヒントとして表示するようになっているため、title属性内のテキストにリンクを貼るには? と悩んでいるわけです。 プラグインの仕様は変更してはいけないルールとなっているので、 ヒントの文言をtitle属性以外にいれたら?という案は却下でした。 title属性内のテキストにリンクを貼るなんて術なし!でしょうか? わかりにくい説明かと思いますが、どうかアドバイスをお願い致します!!

  • input要素のtype属性を変えたい

    携帯サイトのパスワード入力フォームで、最後に入力した1文字だけ表示し、他をマスクするというものがあり、面白いなと思ってPCサイト用にJavascriptで作ってみようと思いました。HTML部に <input type="password" id="pass" /> と書き、初期設定としてJavascript部に window.onload = function() {   var input = document.getElementById("pass");   input.type = "text";   input.onkeydown = 実装する関数; } と書いています。これはHTMLにイベントハンドラを設定したくない(HTMLとJavascriptを分離させたい)からです。type属性がpasswordだとどうやっても文字は見えないので、textに変えてキーが押されるごとに最後の文字以外をマスクしてvalueに挿入する方法を考えていますが、これがうまくいきません。どうやらtype属性は値を取得することは可能ですが、挿入(置き換え)することはできないようなのです(ここでエラーが起こっているようです)。他に input.removeAttribute("type"); input.appendAttribute("type", "text"); といったやり方も試してみましたが、うまくいきませんでした。 これは仕様で、どうやっても無理なのでしょうか? <input type="password" /> を <input type="text" /> に変えれば対処できる問題ですが、Javascript不使用ユーザーにも対応できるようにしたいので、なんとか<input type="password" />形式のまま解決できませんでしょうか?

専門家に質問してみよう