私はテキストのリストを持っています。このテキストがクリックされるたびに、テキストボックスになります。ただし、テキストボックスをダブルクリックすると使用できなくなります。これは私のjavascriptです:div
の動的テキストボックスリストバグjquery
<div id="xxxxxxx" class="l">Text here</div>
私はテキストのリストを持っています。このテキストがクリックされるたびに、テキストボックスになります。ただし、テキストボックスをダブルクリックすると使用できなくなります。これは私のjavascriptです:div
の動的テキストボックスリストバグjquery
<div id="xxxxxxx" class="l">Text here</div>
修正済みです。
$('.l').live('click', function() {
if ($('#ltb').length > 0) return;
// rest of code here
あなたはone
とlive
を交換する場合にも動作します。私は同じid
の2つのdivを作成することに問題があると思うので、これを作成する前に存在するかどうかをチェックします。 hereから
:
無効で同じIDを使用して複数の要素 で文書。
などについてone
変更z-index
パラメータ:テキストが含まれてい
$('.l').live('click', function() {
$('<input type="text" id="ltb" name="'+$(this).attr("id")+'" class="'+$(this).attr("class")+'">').insertAfter($(this)).val($(this).text());
$('#ltb').focus().blur(function() {
$('<div id="'+$(this).attr("name")+'" class="l">'+$(this).val()+'</div>').insertAfter($(this));
$('#'+$(this).attr("class")).text($(this).val());
$(this).remove();
});
$('#ltb').keypress(function(event)
{
var keycode = (event.keyCode ? event.keyCode : event.which);
if(keycode == '13'){
$('<div id="'+$(this).attr("name")+'" class="l">'+$(this).val()+'</div>').insertAfter($(this));
$('#'+$(this).attr("class")).text($(this).val());
$(this).remove();
}
});
$(this).remove();
//$(this).hide();
});
div要素は次のようになります。
。私はいくつかのテストを行い、それをクリックすると、それを再度クリックするとこのバグが発生することがわかりました。 – jbills
ありがとうございます。これは完全に機能します。 – jbills