大ボケこいたのでメモ。

症状としてはSoftbank端末で入力フォームの「input type=”text”」のValue値に固定値(初期値用)を出しても表示されない、というもの。Softbank恒例「これでは出るけどアレではだめだよ」状態だったので、「はいはい機種依存」と処理していたらめっちゃ怒られた。
確かに、見てみると出ているところと出てないところが同じ端末の中に存在する、つまりは機種依存ではないということ。

色々調査した結果、input内の属性「maxlength」に「””」、つまり空を指定していたから、という結論になった。これが空になった原因はテンプレートのタグ用に値を渡してやるのを忘れていたから。
この「””」状態を大半のケータイ(docomo・auは通ってたので多分OK)は「定義なし」と判定するので中身が入るんだが、上で書いた端末では「0」つまり最大文字数が0文字と判定し、表示を行わない らしい。
らしい なのは、「入力はできる(maxlengthは指定なしの時と同じ数値)」状態だったから。とどのところ、本当に上記の定義になっているのかは不明。

自分のスクリプトのバグとは言え、妙な仕様はホント困る。毎回ソフトバンクとdocomoの基本認証パスのデフォ入力が数字なのにはしてやられている気がする。

なぜか色々検索をしてみてもこの状態になっている人を見かけなかったので一応記録しときます。

ツイートツイート

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Post Navigation