1

テキストボックスの値を設定したときに問題があるフォームを開発しています

<input type="text" value="First name" id="TbName">
<input type="text" value="Email" id="TbEmail">
<input type="text" value="School" id="TbSchool">

ユーザーがテキストを入力するためにそのボックスを選択し、ボックスに何も入力せずに別のボックスを選択すると、テキストボックスの値が再びデフォルト値を表示する場合、値を非表示にします。多くのフォームと多くのフィールドがあるため、それぞれに個別のコードを記述することはできません。他に方法はありますか?

4

2 に答える 2

3

HTML:

 <input type="text" name="fname" placeholder="First name">
  <input type="text" name="lname" placeholder="Last name">

placeholder値を持つために使用します

于 2013-06-25T06:44:19.270 に答える
2

$.data()を使用してこれを行うことができます。

HTML:

<input type="text" value="First name" data-default="First name" id="TbName">
<input type="text" value="Email" data-default="Email" id="TbEmail">
<input type="text" value="School" data-default="School" id="TbSchool">

JQuery:

$('input:text').each(function(){
    $.data(this, 'default', this.value);
}).focus(function(){
    if ($.data(this, 'default') == this.value) {
        this.value = '';
    }
}).blur(function(){
    if (this.value == '') {
        this.value = $.data(this, 'default');
    }
});

ライブデモを参照

于 2013-06-25T06:57:44.057 に答える