3

テキストエリアを含むBootstrapモーダルがあります。モーダルを開くときは、開くたびに新しいテキストになるように、テキストエリアから以前のテキストをクリアする必要があります。

問題は、テキストを最初にクリアしたときに、フィールドのプレースホルダーも削除されることです。

$('textarea').val('')テキストをクリアするために使用しています。

http://jsfiddle.net/dkRS8/1/

4

4 に答える 4

2

blurプレースホルダーを再度表示するには、イベントをトリガーする必要があります。また、非表示イベント中にのみ機能するため、再び表示されるとプレースホルダーが元に戻されます。

$('#modal').on('hide', function() {
    $(this).find('textarea').val('').blur();
});

作業中のjsfiddle

編集:私は間違っていました、彼がイベントを使用する彼の答えでマーティンによって説明されているように、イベントをからshowに変更するだけでぼやけることなく機能するようですhideshown

于 2013-02-01T17:24:07.250 に答える
2

「show」イベントではなく「shown」イベントに登録すると機能します。

$(document).ready(function() {

    $('#modal').on('shown', function() {
        $(this).find('textarea').val('');
    });

});
于 2013-02-01T17:26:28.443 に答える
0

試す

$(document).ready(function() {
    $('#modal').bind('hide',function(){
        $('textarea',this).val('')
    })
});

マルチブラウザ、jquery-ui イベント スタンダード

于 2013-02-03T03:05:53.780 に答える
-1

IEバージョンの中で..IE10はプレースホルダーのみをサポートしています....したがって、古いバージョンのIEでこの泥棒を試してはいけません...。

しかし、Firefox、Chrome、Operaなどの他のブラウザはすべてこの属性をサポートしています...

以下のコードを試してみてください...

更新されたフィドル:http://jsfiddle.net/dkRS8/6/

$(document).ready(function() {

    $('#modal').on('show', function() {
        var ele = $(this).find('textarea');
        ele.val('');
    });

});
于 2013-02-01T17:26:10.280 に答える