1

私がしようとしているのは - http://jsfiddle.net/jhrz9/1/

誰かがボタン #goBack ボタンをクリックしたときに生成されたスクリプトを削除するには、ユーザーが #runMyCode をクリックしたときに、スクリプトとスタイル タグを作成して追加できるようになりましたが、#goBack ボタンを使用して前の画面に戻るとすぐに、スクリプトは残ります画面上で、#runMyCode ボタンをクリックしたときに、そのスクリプトを削除して別のスクリプトを再度作成する必要があります。

今、私はこれを試しています -

var newScript = document.createElement('script'); ;
var newTextNode=document.createTextNode($("#jsTextArea").val());
newScript.type = 'text/javascript';
newScript.appendChild(newTextNode);
document.body.appendChild(newScript);
$('#goBack').click(function(){
newTextNode.parentNode.removeChild(newTextNode);
});

しかし、なぜかうまくいかない……。

4

1 に答える 1

1

スクリプトに ID を指定する必要があります。

$("#runMyCode").click(function(){
   $("#resultContainer").html($("#htmlTextArea").val());
   var newScript = document.createElement('script');
   newScript.id = "goback_script";
   var newTextNode=document.createTextNode($("#jsTextArea").val());
   newScript.type = 'text/javascript';
   newScript.appendChild(newTextNode);
   document.body.appendChild(newScript);
   var newStyle = document.createElement('style');
   var newTextNode2=document.createTextNode($("#cssTextArea").val());
   newStyle.type = 'text/css';
   newStyle.appendChild(newTextNode2);
   document.body.appendChild(newStyle);
});
$('#goBack').click(function(){
   var script = document.getElementById("goback_script");
   script.parentElement.removeChild(script);
});

jsフィドル

于 2013-09-15T18:38:28.990 に答える