2017-03-18 16 views
0

は、私は、カスタムフォームを持っており、以下のtextareaです:HTMLテキストエリアに空白があるのですが、その中にプレースホルダがあると、なぜですか?ワードプレスで

<textarea type="text" name="text" rows="4" placeholder="message here"><?php echo esc_textarea($_POST['text']); ?></textarea> 

しかし、textareaは、ブラウザに空白を示しています。 textareaを消去し、空白を削除すると、placeholderのテキストが表示されます。添付

画像:http://imgur.com/a/u6lWJ

+0

興味深いは、そのFirefoxでのみ起こります。 Opera&IEを試してみましたが、この問題はありません。 – theKing

答えて

0

使用この:

<textarea type="text" name="text" rows="4" placeholder="message here"><?php echo trim(esc_textarea($_POST['text'])); ?></textarea> 
+0

それは働いて、ありがとう。 – theKing

0

あなたは$_POST['text']には何がありますか?確かに、それは本当に空です。

たぶん使用することをお勧めし:

私はそれでプレースホルダを持っているとき、私のHTMLのテキストエリア内の空白があるのはなぜ
<textarea type="text" name="text" rows="4" placeholder="message here"> 
    <?php if (isset($_POST['text']) && !empty($_POST['text'])) { 
    echo $_POST['text']; 
    }; ?> 
</textarea> 
+0

それでも、同じ問題がありました。 – theKing

0

戻り値esc_textarea($_POST['text'])は空の文字列ではないためです。

テキストエリア内を選択して空白を削除すると、テキストエリアが消去され、プレースホルダテキストが表示されます。

空白、改行などの空白はデータです。彼らは価値として数えます。

値がある場合は、値が表示されます。プレースホルダは、値がない場合にのみ表示されます。

検出されたとおり、値を削除すると、プレースホルダが表示されます。

+0

私は '<?php echo esc_textarea($ _ POST ['text']);を削除してテストしました。 ?> 'そしてまだこの問題はあります。 – theKing

+0

これはFFのみです。 Opera、Edge、IEは正常です。 – theKing

+0

@theKing - あなたの問題を再現できません:http://jsbin.com/yiwegoy/2/edit?html,output – Quentin

関連する問題