2013-08-22 3 views
3

Я пытаюсь создать простую страницу, которая «исправляет» старый код для встраивания YouTube, чтобы он работал в PowerPoint 2010. Если я жестко кодирую код вставки в текстовое поле на странице, он отлично работает , но если пользователь вставляет код вставки в текстовую область, javaScript, похоже, не запускается.JavaScript string replace in textarea

Посмотрите здесь: http://jsfiddle.net/pch8N/

Вот что я до сих пор:

<p>Click the button to "fix" the old embed code</p> 

<textarea rows="10" cols="60" id="demo"></textarea> 
<br/> 

<script> 
function myFunction() 
{ 
var str=document.getElementById("demo").innerHTML; 
var n=str.replace(/\/\/www.youtube/g,"http://www.youtube").replace(/version=3/g,"version=2"); 
document.getElementById("demo").innerHTML=n; 
} 
</script> 

<button onclick="myFunction()">Try it</button> 

Спасибо за помощь!

ответ

1

Вы должны использовать value вместо innerHtml

function myFunction2() 
{ 
var str=document.getElementById("demo2").value; 
var n=str.replace(/\/\/www.youtube/g,"http://www.youtube").replace(/version=3/g,"version=2"); 
document.getElementById("demo2").value=n; 
} 
0
var str=document.getElementById("demo").innerHTML; 

Вы должны использовать .value и не .innerHTML

0

Поместите текстовое поле внутри тега формы

Затем используйте

var str=document.getElementById("demo").value;