首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用eval评估文本区域中的javascript代码段?

使用eval评估文本区域中的javascript代码段?
EN

Stack Overflow用户
提问于 2012-03-25 16:13:38
回答 2查看 1.7K关注 0票数 1

我在我的第一个黑客马拉松,并试图完成我的项目。我是非常非常新的javascript..。我所知道的一切都是我在过去的两个小时里学到的。话虽如此..。

所以我知道eval不是最好用的东西,但是我正在试着写一个简单的程序,在这个程序中你可以把一个javascript片段输入到一个文本区域中,点击一个执行按钮,然后让这个javascript在另一个文本区域中执行。我现在尽量远离jquery,因为我想在添加另一个级别的复杂性之前弄清楚真正的基本概念,这就是为什么我不使用id的原因……但如果jquery是唯一的方法,那么我猜我将不得不在接下来的8个小时内付钱学习它。

代码如下(ish):

代码语言:javascript
复制
function executeJS ()
{
    var result = eval(game.input.value);
    game.execute.value=result;
}
<head>
    <body>
    <H1>PRogram</H1>
            <form name="game"> 

            <textarea name="execute" rows="5" cols="30" value=""></textarea><br>
            <textarea type="text" name="input" rows="10" cols="30" value=""></textarea>

            <input type = "button" value = "guess" onclick = "executeJS()</input>
            </form>
    </body>
</head>

我在我的执行框中没有得到输出。

任何洞察力都将不胜感激。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-25 16:18:18

“游戏”不是一个变量。它是一个DOM元素名称。

如果你想获得它的对象,给它一个id,比如说"game",然后使用document.getElementById('game')

请注意,<body>

  • Your

  • 代码周围的<head>不在<script></script标记内。
票数 2
EN

Stack Overflow用户

发布于 2012-03-25 16:21:13

这是一个working version。但是,我会重新考虑您不使用I或库的想法:

代码语言:javascript
复制
function executeJS() {
    var game = document.forms['game'];
    var result = eval(game.input.value);
    game.execute.value = result;
}

还要提防eval

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9858749

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档