2016-11-14 19 views
0

클릭 할 때 범위로 변환하고 바깥 쪽을 클릭하면 범위가 다시 변환됩니다. 그러나 그것은 단지 한 번 변환하고 다시는 발생하지 않습니다.클릭시 입력 범위로 변환

다음은 코드입니다.

$(function() { 
    $(document).on('click', 'span.loadNum', function() { 
     var input = $('<input />', { 
      'type': 'text', 
       'name': 'unique', 
       'value': $(this).html() 
     }); 
     $(this).parent().append(input); 
     $(this).remove(); 
     input.focus(); 
    }); 

    $(document).on('blur', 'input', function() { 
     $(this).parent().append($('<span />').html($(this).val())); 
     $(this).remove(); 
    }); 
}); 

그리고

<span class="loadNum">Hasha</span> 
<span class="loadNum">dbhfb</span> 

은 또한 사람이 내가 변환 입력 태그에 Enter 키를 누릅니다 때 아약스 전화를 제출해야이를 달성하는 방법을 알 수 있습니다 걸쳐있다.

+0

http://jsfiddle.net/hW3vk/114/ – Alexis

답변

1

span을 다시 추가하면 클래스가 없습니다. 그래서 span.loadNum 선택자는 식별하지 않습니다. Add the class :

$(this).parent().append($('<span />').addClass('loadNum').html($(this).val())); 
+0

고장 ... 스팬이 자신의 위치를 ​​변경하는 약간은 여전히있다! 그 doesnt는 좋아 보인다! – Alexis

+0

@Alexis : 조금만 로직을 수정해야 할 것 같습니다. 이것은 원래 질문에서 직면 한 문제를 해결하지만, 전체 애플리케이션이 정확하거나 이상적으로 구현되었다고 약속하지 않습니다. 이 대답은 당신이 그 코멘트에 묘사하고있는 문제를 소개하지 않습니다. – David

+0

알았어요! 하지만 거기에 또 다른 문제가있다 .. Ajax가 '13'키를 제출했다. – Alexis

관련 문제