为什么赢了';JavaScript不能运行吗?

为什么赢了';JavaScript不能运行吗?,javascript,html,css,editor,Javascript,Html,Css,Editor,我正在制作一个HTML代码编辑器,我测试了我知道的所有HTML标记,它们都可以工作,除了脚本标记 当我在文本区域中键入something并单击按钮时,脚本不会执行 请帮忙!代码如下: <span id="finishedProduct"> <p>When you enter code, your finished product will be here! Don't worry, if you make a mistake you can fix it later!&

我正在制作一个HTML代码编辑器,我测试了我知道的所有HTML标记,它们都可以工作,除了脚本标记

当我在文本区域中键入
something
并单击按钮时,脚本不会执行

请帮忙!代码如下:

<span id="finishedProduct">
<p>When you enter code, your finished product will be here! Don't worry, if you make a mistake you  can fix it later!</p>
</span>
<form name="userCode">
<textarea name="userCode" cols="90" rows="20" placeholder="Type your code here"></textarea></br>
<a href="javascript:makeCode()"><button type="button">Run Code!</button></a>
</form>
<script>
function makeCode() {
var userCode=document.forms["userCode"]["userCode"].value;
document.getElementById('finishedProduct').innerHTML = userCode;
}
</script>

当您输入代码时,您的成品将显示在此处!别担心,如果你犯了一个错误,你可以稍后再纠正


函数makeCode(){ var userCode=document.forms[“userCode”][“userCode”].value; document.getElementById('finishedProduct')。innerHTML=userCode; }
我把答案放在这里:

我不确定为什么要将button元素包装在锚中,但我会用稍微不同的方法

以下是修订后的javascript:

var myButton = document.getElementById("btnRunCode");

myButton.addEventListener("click", makeCode);

function makeCode() {
    var userCode=document.forms["userCode"]["userCode"].value;
    document.getElementById('finishedProduct').innerHTML = userCode;
}

我在你的按钮元素中添加了一个“btnRunCode”的id,只是为了让事情变得更简单。看小提琴。

这是工作代码:

<span id="finishedProduct">When you enter code, your finished product will be here! Don't worry, if you make a mistake you  can fix it later!
</span>
<form name="userCode">
    <textarea name="userCode" cols="90" rows="20" placeholder="Type your code here"></textarea>
    <br/>
    <button type="button" onClick="makeCode()">Run Code!</button>
</form>
<script type="text/javascript">
    function makeCode() {
        var userCode=document.forms["userCode"]["userCode"].value;
        document.getElementById('finishedProduct').innerHTML = userCode;
    }
</script>
当您输入代码时,您的成品将显示在这里!别担心,如果你犯了一个错误,你可以稍后再纠正!

运行代码! 函数makeCode(){ var userCode=document.forms[“userCode”][“userCode”].value; document.getElementById('finishedProduct')。innerHTML=userCode; }
这里有一个指向JSFIDLE的链接:。我已经删除了一些损坏的HTML,例如;按钮不应该包含在锚标记中,我在按钮中添加了一个“onclick”,它将调用“makeCode()”函数,并在脚本标记中添加了“type=”text/javascript“,因为这将最大限度地提高兼容性

如果你需要更多的帮助,请告诉我

我已经更新了我的JSFIDLE
现在有两个文本区域,一个用于HTML,一个用于Javascript。我还创建了一个名为“makejs”的新函数,它获取Javascript textarea的值并通过“eval”运行它-这将执行传递给它的Javascript。

Duplicate:我已更新了我的答案,以帮助您解决脚本不会执行的问题,很抱歉延迟,我不确定这被否决的原因,因为它完全符合OP的要求。另外,@Xanco提交的答案本质上只是我答案的一个更为冗长的版本。它不符合OP的要求,Xanco的答案不符合。@Quentin你说得对。我误解了OP的问题。谢谢。