2012-04-14 2 views
2
$(document).ready(function() { 
     $('#test').click(function(){ 
      videofix(); 
     }); 
    } 
    function videofix(){ 
     $('#article').text($('#article').val().replace(/\[video\](http:\/\/(www\.)?youtube\.com\/watch\?v=([a-zA-Z0-9]+))\[\/video]/g,'[video=youtube;$3]$1[/video]')); 
    } 
      </script> 
    <textarea id="article" name="article"></textarea><br> 
    <input type="button" id="test" value="test"> 

기본적으로 내 문제는 textfix를 사용하는 동안 videofix 함수가 호출 되어도 텍스트 영역의 텍스트를 대체하지 않는다는 것입니다. 실제로 jsfiddle에이 코드를 복사하고 거기에서 시도해 보았습니다. 그래서 나는 대체 무슨 일이 일어나고 있는지 잘 모르겠습니다.jQuery .html()에서 텍스트 영역의 값을 설정하지 않습니다.

답변

7

값을 textarea로 설정하려면 html() 대신 val() 메서드를 사용해야합니다.

$("#article").val("something"); 
+0

감사합니다. – Renari

2

코드에서 내가 볼 수있는 유일한 텍스트 영역은 id="article"있다. 그리고 내가 볼 수있는 한 멀리까지 .html()을 사용하여 값을 설정하지 않았습니다. .html 중에서()가 작동하지 않을 경우

어쨌든, 어쩌면 대신을 시도해보십시오 jsfiddle 복사하지만 근무하고 실제 일하지 않았다 이상한 일

$("#article").empty().append(data); 
관련 문제